getchar空格算字符吗(getchar能读取空格吗)

1、掌握如何处理输入函数留下的垃圾

输入函数留下的“垃圾”

使用输入函数可能会留下垃圾

int x;
char ch;
scanf("%d",&x);
scanf("%c",&ch);
printf("x=%d,ch=%d\n",x,ch);

例:
#include <stdio.h>
int main(){
int x;
char ch;
scanf("%d",&x);
scanf("%c",&ch);
printf("x=%d,ch=%d\n",x,ch);
return 0;
}
输入:5
输出:x=5,ch=10
回车被当作x识别 问题

方法一:

可以使用 getchar()消除 空格
#include <stdio.h>
int main(){
int x;
char ch;
scanf("%d",&x);
getchar();
scanf("%c",&ch);
printf("x=%d,ch=%d\n",x,ch);
return 0;
}

方法二:

用格式串中空格或“ %*c”来吃掉 空格
 #include <stdio.h>
int main(){
int x;
char ch;
scanf("%d",&x);
scanf(" %c",&ch);
printf("x=%d,ch=%d\n",x,ch);
return 0;
}

2、掌握字符串输入函数的用法

字符串输入函数 gets()

格式:char *gets(char *s)

功能:从键盘输入以回车结束的字符串放入字符数组中,并自动加‘\0’

说明:输入串长度应小于字符数组维数

说明:与scanf函数不同,gets函数不以空格作为字符串输入结束标志

#include <stdio.h>
int main(){

    char s[5];
    gets(s);
    printf("%s\n",s);

   return 0;
}

注:gets()输入可以有空格,scanf() 输入不能有空格

3、掌握字符串输出函数的用法

字符串输出函数 puts

格式:int puts(const char *s)

功能:向显示器输出字符串(输出完,自动换行)

说明:字符数组必须以'\0' 结束

例:
#include <stdio.h>
int main(){
    char string[80];
    gets(string);
    puts(string);
   return 0;
}
输入什么字符串 》就输出什么字符串

4、总结

怎么处理函数留下的垃圾
字符串的输入输出函数

思考

解决输入晗数留下的垃圾,有几种方法?
C语言中,如何输入或输出一个字符串?


C语言-输入输出特殊(字符串)


本文链接:http://www.cdwelead.comhttp://www.cdwelead.com/shxw/23417.html
上一篇:seo对前端要求高吗
下一篇:没有了

欢迎扫描关注我们的微信公众平台!

欢迎扫描关注我们的微信公众平台!