永发信息网

c语言循环语句

答案:4  悬赏:80  手机版
解决时间 2021-04-26 22:11

t=0;

while (printf("*"))

{t++;if(t<3) break;}

为什么循环控制表达式与'0'(不是0)等价呢?

最佳答案

while后为一个表达式(expression),当此表达式为True(或非0)时,循环继续,当此表达式为False(或0)时,循环结束。


printf("*")和'0'的结果都不是0,故等价。

全部回答
在底层是按照ASCII码计算的,所有的字符都有对应的ASCII码,也就是数字

t++之后,t变成1,小于3,所以跳出循环了

因为while本身是看循环控制表达式的结果是否为零来判断循环是否继续进行的。printf(“*”)正确执行后的返回值并不是一个为零的值;对于‘0’,在ascii码中值也不是零,所以这两个是等价的。真正控制循环结束的是break语句。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
冬天电脑主机为什么早上开机会发出可大响声?
QQ游戏的2D桌球,,纳闷才能打得好。。不要给
这是个什么车型.哪过来告诉我.
哪位朋友知道,丰田花冠的钥匙一套要多少钱
宏顺旅馆我想知道这个在什么地方
DNF为什么江苏3区不能转区啊
请问java中,super什么时候使用?
从精神的出轨到肉体的出卖到底还有多远
『零之使魔』有多好看?
有关水的现代诗
老红军功劳怎样去找
万方科学2008年初计划全年比2007年多创立20‰
现在有什么好听的英文或者韩国的歌曲啊?
如果是网络中的BF该送什么圣诞礼物呢?
如何分辨泰斗半月幼鱼的性别?
推荐资讯
中国移动崀高代理店在什么地方啊,我要过去处
我在英雄岛游戏里骂了腾讯要封几天的号,我已
在页面内点鼠标右键没反应,怎么办?
王开雪糕批发怎么去啊,有知道地址的么
我玩什么职业?
绥化学院的新生,谁是河南周口的,我们一起去
qq业务当天开了又关,关了又开几次会不会扣费
华岐乡在什么地方啊,我要过去处理事情
东方宝贝连锁孕婴生活馆在哪里啊,我有事要去
高手请进:系统盘附带的QQ2009能点亮会员,短
辽宁省公务员考试有冲刺班吗?哪个老师讲的好
我为什么头会晕
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?