#include<stdio.h>
void main()
{
char a;
scanf("%c",&a);
printf(" %d",a);
}
输入的时候按空格键输出为32.说明把空格赋给了变量a。
这是为什么啊!,为什么下面的代码段中scanf又不能识别空格?
#include<stdio.h>
void main()
{
int b;
scanf("%d",&b);
printf("%d",b);
}
我记得学C语言的时候是说scanf不接受空格都嘛!越来越奇怪了啊
%c前面的空格就是用来屏蔽空白符的。
(scanf()读入字符串中的空格)
#include<stdio.h>
int main()
{
char a[777];
scanf("%[^/n]",&a);
printf("%s",a);
return 0;
}
扩展资料:
使用scanf注意事项
1、参数的个数一定要对应
2、输入的数据类型一定要和所需要的数据类型一致
3、每次调用完scanf后,记得调用一个getchar()函数
函数 scanf() 是从标准输入流stdio (标准输入设备,一般指向键盘)中读内容的通用子程序,就是从标准输入流中或许数据,上面第一个scanf()要读入一个整数,它从标准输入流中查找,跳过空白符(空格、换行符、制表符)。
参考资料来源:百度百科-scanf (计算机语言函数)