for (i = 0;i>4;++i);
scanf("%d",&p[i]); 如果未在键盘是进行输入操作,这个for循环会让 i 自增吗?
当然不会
scanf就是等待你键盘的输入,输入队列阻塞,因此i不自增,直到有输入并回车赋值给数组,也就是执行完scanf语句
scanf就是等待你键盘的输入,输入队列阻塞,因此i不自增,直到有输入并回车赋值给数组,也就是执行完scanf语句
温馨提示:答案为网友推荐,仅供参考
第1个回答 2012-02-28
会停止,键盘是c的标准输入设备,但也可以改变,改变后就不用从键盘读取,可能是你设置的某个文件读取(有数据就继续执行下去了)。
第2个回答 2012-02-28
不会,这程序不会往下运行.
第3个回答 2021-08-17
你这个for语句写得有问题
先执行完i=0,然后判断i是否大于4,0<4,所以这个scanf根本不会执行,i也不会自增
改成如下:
for(short i=0/*节省下空间*/;i<4/*从0循环到3*/;i++)
scanf("%d",&p[i]);
先执行完i=0,然后判断i是否大于4,0<4,所以这个scanf根本不会执行,i也不会自增
改成如下:
for(short i=0/*节省下空间*/;i<4/*从0循环到3*/;i++)
scanf("%d",&p[i]);