为什么scanf不能输入
为什么printf能输入数字但scanf不能
代码和输入格式有误。1、scanf("%d,%d",&a,&b);按照这个格式,输入数据的时候,应该加上逗号。比如说想输入22 33 就应该 22,33。2、也可以像这样scanf("%d %d",&a,&b);中间用空格隔开,那样就可以直接输入 22 33了。scanf 的功能用一句话来概括就是“通过键盘给程序中的变量赋值”。该...
为什么scanf不能输入字符串
scanf不能输入字符串:因为scanf函数遇到空格,换行符或者tab键的时候后会立即结束读取,所以,你输入hello jane,最后读取的只有jane。如发现第一次输入的内容,scanf并没有全部读取,只读取了第一个空格之前的内容,也就是John,后面的Wilson被临时存储到缓冲区,当出现第二次scanf的时候,就自动将Wilson...
C语言中scanf()与gets()函数的区别,哪一个可以读入空格啊?
1.scanf不能接受空格、制表符Tab、回车等;对末尾回车符的处理:把回车符保留在缓存中。gets能够接受空格、制表符Tab和回车等;对末尾回车符的处理:接收回车,但把回车替换为\\0。2.scanf :当遇到回车,空格和tab键会自动在字符串后面添加'\\0',但是回车,空格和tab键仍会留在输入的缓冲区中。gets...
为什么scanf不能处理char
函数用法不对。scanf不能处理char是scanf函数用法不对,更改函数即可。scanf是C语言中的一个输入函数,与printf函数一样,都被声明在头文件stdioh里,是格式输入函数,即按用户指定的格式从键盘上把数据输入。
为什么scanf不能存空格?
scanf("%s%c", str,&chr);可能你只是觉得表达清楚意思就行了。然后再说为什么会向你说的这样 你输入一个字符串赋值给str,然后按回车或者空格来结束,以输入下一个字符赋值给chr,你知道不,你按空格或者回车也是字符啊,所以它就把你输入的空格或者回车赋给了chr字符了。空格的AscII码是32,回车...
VS2013用scanf函数不能输入两个以上的字母是咋搞的
带“_s”后缀是为了让原版函数更安全:scanf()在读取时不检查边界,所以可能会造成内存访问越界,例如分配了5字节的空间但是读入了10字节,而scanf_s是visual studio中加入的完善版函数,可防止这类引用到不存在的元素的情况发生。而你的代码是在VS中编译的,找不到vS下的函数,所以用不了。
为什么scanf不能接收键盘输入,被跳过???改成C++的cin>>后便可以接收并...
这个问题是由于输入缓冲区内有东西引起的,这个时候scanf就会直接读入缓冲区内存在的内容,从而跳过了键盘输入。输入缓冲区存在内容有多种原因,之前进行过输入是可能原因之一。清空输入缓冲区最好的方法是:int c;while((c = getchar()) != '\\n' && c != EOF);\/\/ EOF 是 \\0 除此之外VC下...
scanf为什么不能自己找地址
scanf是C语言中的一个输入函数,与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上include。该函数是在通用终端格式化的条件下进行运算的,系统有一定的规定,不能自己找地址是系统无法识别外来输入的地址。它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之...
如果scanf()不能正常输出怎么办?
inti;scanf("%d",&i);getchar();while(i--){ scanf("%c%c%c",&a,&b,&c);getchar();if(a>b){d=a;a=b;b=d;} if(a>c){d=a;a=c;c=d;} if(b>c){d=b;b=c;c=d;} printf("%c%c%c\n",a,b,c)...
问一下C语言scanf的题 这道题为什么不能用scanf输入字符串? 是根本就...
当scanf读字符串的时候,空格是scanf的终止符,即读到空格scanf函数就会结束
钟山县杏灵回答: scanf_s函数在输入的时候还要加1个长度参数scanf_s("%c",&c,1);//这样就好了,后面的参数1表示只读取1个输入字符
阳炎15337398286问: scanf输入不了 - ?
钟山县杏灵回答: #include #define M 3 #define N 2 int a[M][N],b[M][N]; void main() { int i,j; for(i=0;i for(j=0;j scanf("%d",&a[i][j]);//还是用回传统格式a[i][j]吧 } for(i=0;i for(j=0;j printf("%d ",*(a[i]+j));//这里该用*号引用值,不是输出地址 } return 0; }
阳炎15337398286问: C语言的scanf怎么没执行? - ?
钟山县杏灵回答: 这种情况通常发生在前面已经有了输入语句,而当前的scanf是在接收字符(即用%c控制输入)时.由于前面的输入语句(不一定是scanf)把最后输入的'\n'遗留在了输入缓冲区,而当前的scanf("%c",...);又会把'\n'当一个字符接收,又由于...
阳炎15337398286问: 为什么~scanf()表示没有正确输入呢? - ?
钟山县杏灵回答: 调用scanf这个函数的返回值是成功读取的数据个数.在你这段程序里,如果正确输入了,也就是成功读取了一个数据,scanf的返回值为1;如果没有正确输入,那成功读取的数据个数就是0,也就是scanf的返回值为0.~的意思是把数据的各个二...
阳炎15337398286问: 为什么不能用scanf读入一个含有空格的字符串 - ?
钟山县杏灵回答: 因为scanf是以空白符(空格、制表符、换行等等)为结束标志的,当遇到空白符是就会结束一次输入,如果你需要读取空格的话可以使用gets或者getchar
阳炎15337398286问: 为什么在C语言中,字符型不能用SCANF输入,而是用GETCHAR? - ?
钟山县杏灵回答: 楼主你好,关于你问的这个问题在我初学C语言的时候也遇到过,不仅是一个人遇到,这是很多初学者都会遇到的问题~,当然,我不是说楼主大哥你是初学者~~~呵呵~~~~~~~这个问题曾经麻痹了很多人,开始我也是不知道是什么原因,直到一...
阳炎15337398286问: C语言中关于字符数组输入,scanf为什么没执行 - ?
钟山县杏灵回答: 这个算是比较典型的错误的 用scanf来接收字符串,最后的回车符不会被接收,留在缓冲区,下一次再用scanf时,从回车符开始接收,所以ch接收到的字符是回车符,解决方法是,在scanf("%c",&ch);上面加上一条语句:getchar();修改后的代码类似如下:......printf("请输入要查找的字符:"); getchar(); //加上这条语句,消耗缓冲区的回车符. scanf("%c",&ch);......
阳炎15337398286问: 问一下C语言scanf的题 这道题为什么不能用scanf输入字符串? 是根本就不可以,还是这题不行 - ?
钟山县杏灵回答: 当scanf读字符串的时候,空格是scanf的终止符,即读到空格scanf函数就会结束
阳炎15337398286问: 为什么运行不能输入scanf("%c",&c);这一步!见图! - ?
钟山县杏灵回答: #includemain() {int result,month,age; char c; printf("\nInpit your result:"); scanf("%d",&result); if (result1184) {printf("Wrong Result!Press any key for end...\n"); scanf("%c",&c);/*意图通过这个命令让程序暂停运行,等到键入任意一个值...
阳炎15337398286问: 为什么chan()函数的scanf不执行??具体进来看,程序很简单?
钟山县杏灵回答: 因为你有了scanf("%d",&a).最后 的回车被 scanf("%c",&a)里面的a吸引 了.你在scanf("%d",&a)后面再加一句 getchar()就行了