问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言for(i=5;i;i--)i--循环多少次

发布网友 发布时间:2022-05-10 14:39

我来回答

5个回答

热心网友 时间:2023-10-12 02:32

语句是个死循环,执行无数次。
第1次循环:i=5, 执行循环体i--,i=4,再执行1次i--,i=3
第2次循环:i=3,执行循环体i--,i=2,再执行1次i--,i=1
第3次循环:i=1,执行循环体i--,i=0,再执行1次i--,i = -1
.....然后就进入死循环啦。

热心网友 时间:2023-10-12 02:33

条件这样写会是个死循环出不来!
原因:初始时i的值为5,此时判断i为真(不为0),执行函数体中的i--,此时i值为4,然后返回for中的第三项,对i再进行--,此时i值变为3,进入for的第二项判断条件i为3,不为0(即不为假,条件符合,进入循环体)
第二次进入循环体时,执行i--,此时i值变为2,然后从函数体中出来,执行for第三项i--,此时i值变为1,然后进入for条件中的第二项即判断i是否为0(即条件是否为真),因为此时i值为1,相当于条件为真,故再次进入循环体中
第三次进入循环体,执行i--,i的值变为0,如果此时判断条件就可以退出循环了,但是,还没有执行for的第三项呢,故先执行for第三项i--,此时i值为-1,不为0,即判断条件i不为假,条件成立,会再次进入循环体中
接下来就没有条件为0的时候了,故成了死循环出不来了

将i初始值改为4,可以刚好到0的时候进行判断i,此时就可以循环两次退出了

问题的关键是你没有搞清楚for循环()中的三个语句的执行循序:依次为
(1)赋初值:i=5//只在刚开始时进行1次
(2)判断条件:i//看第二项条件是否为真,是真进入循环体,否则退出循环
(3)循环体:执行循环体语句i--
(4)计数操作:即第三项i--,然后转入(2)直到退出为止,否则就死循环了

这样解释你明白了吧?呵呵,希望对你有帮助

热心网友 时间:2023-10-12 02:33

for(i=5;i;i--)i--;
这一句其实相当于
for(i=5;i;i-=2);
也就是说:
第一轮循环:i=5
第二轮循环:i=3
第三轮循环:i=1
第四轮循环:i=-1
第五轮循环:i=-3
……………………
这时i的值总是非零值,所以循环不会终止。

取掉一个i--,才会遇到i=0的情况而停止,比如改为
for(i=5;i;i--);

for(i=5;i;)i--;

热心网友 时间:2023-10-12 02:34

循环无限次。
第一次是i=5执行后i=3
第二次I=3执行后i=1
第三次i=1该次循环执行后i=-1
第四次i=-1这个for判断语句不成立
这个循环相当于
i=5;
for(;i!=0;){
i--;
i--;}

热心网友 时间:2023-10-12 02:34

五次,当i=0时结束,for循环将I当作布尔逻辑运算来做,若初始值为-1,则循环无数次。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
福建南安都有哪些市场 端午节去南安旅行的线路有哪些值得分享? 南安有哪些特色商业街 把一个棱长是10厘米的正方体铁块熔铸成一个底面积是20厘米的圆锥形铁块... 把一块棱长10厘米的正方体铁块熔铸成一个底面直径是20厘米的圆柱形零件... 0x0438ef0指令引用的0x0438ef0内存.该内存不能为“read”的错误提示... SONY 索尼 DSC-RX100M5A 1英寸数码相机 黑色(8.8-25.7mm、F1.8) Vl... SONY 索尼 DSC-RX100M5A 1英寸数码相机 黑色(24-70mm、F1.8-F2.8)-购... 索尼RX100 M5A数码相机 索尼RX100 M5A数码相机:小巧便携,成像卓越 4个C语言编程问题..懒的分开发啦..给满分啦、 C语言问题!!急!!! 问一个for循环逻辑 求大神解答。谢谢 那位大虾帮助我一下啊??? 求助C语言习题:用逻辑表达式、for循环求解逻辑题。 c语言问题,int i,n=0 for(i=2;i<5;i++) { do{ if(i%3)continue;n++; }while(!i)\\这里!i是什么意... 跪求!!For循环 怎么做啊!!! 关于C语言的逻辑"非"运算符 脖子和下巴的交界处长痘痘是怎么回事?应该怎么办 ? 最近开始吃胶原蛋白,但没几天,下巴就开始长痘,不知道是不是服用胶原蛋白产生的? 欢喜烟弹能装yooz的杆吗 yooz电子烟五代 做过自体血清填充下巴吗,效果怎么样? 现在哪款智能手表能接图片? YOOZ电子烟实体店 各位知道在哪有yooz一代吗? oppo watch接语音通话? yooz一代到四代的功能 一道乘法算式第一个乘数是6小红看成8结果是24二年级下 C语言中的for语句和n++、++i 语句 C语言逻辑上的问题 请教VB问题 pascal学习 抖音视频声音里提会被查封吗 怎样快速记住身份证号码? 咋记身份证号好记 怎么记身份证号码,才能快速的记住啊 有没有什么容易记住自己身份证号码的办法?教教我吧!谢谢! 我经常记不住自己的身份证号,怎么才能比较容易记住? 怎么记身份证号码,怎么才能快速的记住啊? 如何背会自己的身份证号码的? 英国优衣库和中国优衣库尺码一样吗 农村做铝合金门窗是否有前途? 现在在农村做铝合金门窗加工有多大利润?能赚到钱吗? 铝合金门窗制作公式节点图 29是大码还是小码? 敬业签怎么在手机桌面显示 神经衰弱失眠吃什么食物好 神经衰弱吃什么最好啊?