c语言while((c1=getchar())!='\n') 和c1=getchar();while(c1!='\n')有什么不同?
答案:2 悬赏:30 手机版
解决时间 2021-07-19 00:14
- 提问者网友:且恨且铭记
- 2021-07-18 16:08
c语言while((c1=getchar())!='\n') 和c1=getchar();while(c1!='\n')有什么不同?
最佳答案
- 五星知识达人网友:迷人又混蛋
- 2021-07-18 16:38
很大的不同,while((c1=getchar())!='\n')是每次循环都获得一个值getchar(),然后再次判断是否符合循环条件,再次循环,直到遇到回车结束循环;
而c1=getchar();while(c1!='\n')是先用getchar()获得一个值,然后判断这个值是不是回车,进入循环,这里特别注意,如果第一次getchar()的值是回车还好,直接跳出循环,但是如果不是回车,那么这个While循环将是一个死循环,这是非常危险的。所以第二种写法是错误的……不建议使用。
全部回答
- 1楼网友:迟山
- 2021-07-18 17:01
while((c1=getchar())!='\n')
可循环输入单个字符,并判断输入的字符是否为\n,如果不是则可以继续输入,否则退出while循环。
c1=getchar();while(c1!='\n')
只可以输入一次,然后判断输入的字符是否为\n,只有当输入的字符不为\n才进行while循环
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯