关于while( scanf("%d",&i))问题请教
# include <stdio.h>int main()
{
int i,j,a;
while(a = scanf("%d %d",&i,&j))
{
printf("输入%d 个数字!请继续输入\n",a);
}
return 0;
}
输入两个数字的时候返回2 打印完能返回到while那里 重新输入
但是在输入一个或者两个都不是数字的时候 返回到while 以后不能重新输入 直接向下执行 此时a = 0(因为没有读取成功)
程序直接结束
还有如果是while(!scanf(“%d”,&i) )时 也会出现同样情况 只要第一次输入的不正确 scanf 返回0 之后while 循环里的语句就会一直执行下去
请求各位大神帮忙解决一下 不胜感激
页:
[1]