while((scanf("%d",&x))!=1)是啥意思?

是不是判断输入的x值是否为整数?

scanf("%d",&x))!=1 的意思是 x != 1 ,这里是用到了scanf()函数的返回值,在条语句里,返回值是 1 .
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-07-27
scanf()函数的返回值~是正确输入数据的个数~
判断输入是否正确~
第2个回答  2010-07-27
不是,判断是不是输入了,输入这件事是不是为真
第3个回答  2010-07-27
不是 是判断 x 是不是 1本回答被提问者采纳
第4个回答  2010-07-27
是不是1位数。

c语言中while(scanf("%d",&x)==1)是什么意思?
while(scanf("%d",&x)==1)相当于 while(1){scanf("%d",&x)} 就是说只要输入成功就进入循环。然后下一次循环前又先输入;

c语言中while(scanf("%d",&x)==1)是什么意思?
while(scanf("%d",&x)==1)的意思就是:当接收输入变量x的值成功的时候,继续做循环。

while((scanf("%d",&x))!=1)是啥意思?
scanf("%d",&x))!=1 的意思是 x != 1 ,这里是用到了scanf()函数的返回值,在条语句里,返回值是 1 .

while(scanf("%d",&x) == 1)\/\/ctrl+z到底是怎么作用,终止循环?
scanf("%d",&x)其返回值为正确输入的变量个数. 正确执行时会成功给x赋值,即赋值了一个变量. 返回1.当出错的时候,比如输入了字母,那么就会返回0.当遇到文件结束标记EOF的时候,会返回-1.所以,这个代码,不一定要ctrl +z 输入任意非数字字符就可以终止循环了.ctrl +Z 就是windows上输入EOF标记的方...

...while(scanf("%d",&x)==1){...}我一次性输入多个x为什么返回还是1_百...
执行成功就返回真

VS2015中while (scanf("%d", &x) != EOF)输入ctrl+z无法结束
你可以试试改成 while (scanf("%d", &x) == 1)这个会比ctrl z的情况更通用一些。在输入任何非法数据时,都会触发结束输入。

...while(scanf("%d",&x)==1){...}我一次性输入多个x为什么返回还是1_百...
因为一次只能读一个。比如输入 1 2 3 4 5后,第一次读取的是x=1,进入while循环体内,循环体结束再读取第二个数,即2.直到条件不满足。

关于scanf 返回值得问题
楼主你好 scanf函数的返回值 是表示正确读入变量的个数 由于你写的scanf是:scanf("%d",&x)那么scanf函数每次只读入一个数 所以 只要你输入的数是正确的 那么每次就是返回1 因此 你的while循环会一直执行下去 希望能帮助你哈

...scanf的返回值 如果一次读入一个数 那么输入一个X之后回车为什么不立 ...
输入一个X之后按回车,scanf已开始运行。但是循环结束的条件是while(scanf("%d", &x)==1),则继续等待输入。比如在按下CTRL+Z(表示EOF),此时scanf的返回值是-1,那么-1!=1,则while循环结束。

while语句中scanf()的问题
scanf("%d%d", &a, &b);如果a和b都被成功读入,那么scanf的返回值就是2 如果只有a被成功读入,返回值为1 如果a和b都未被成功读入,返回值为0 如果遇到错误或遇到end of file,返回值为EOF。且返回值为int型.所以,第一个问题: 输入点(.),遇到错误,返回值为 EOF。不等于 1, 退出循环...

相似回答