while(scanf("%d",x)==1)什么意思

c++,快,thank

scanf 函数返回值,0表示接受输入失败,1表示接受输入成功。 while(scanf("%d",&x)==1) 的意思就是: 当接收输入变量x的值成功的时候,继续做循环,否则就跳出
温馨提示:内容为网友见解,仅供参考
无其他回答

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

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

...while(scanf("%d",&x)==1){...}我一次性输入多个x为什么返回还是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)是啥意思?
scanf("%d",&x))!=1 的意思是 x != 1 ,这里是用到了scanf()函数的返回值,在条语句里,返回值是 1 .

c++有类似于c的scarf(。。。)==1的语法吗?
cin有个返回值比如 int x;while(cin>>x){ xxxxxx } 这样就是不断读取整数到x,直到无法读取为止,等同于c中的 while(scanf("%d",&x)==1){ xxxxxxxxx }

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

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

...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, 退出循环...

相似回答
大家正在搜