C语言中 for(i=1;i+1;i++) {;} 是怎样运行的。求能人写一下整个语句的运行步骤。
答案:6 悬赏:50 手机版
解决时间 2021-02-11 13:35
- 提问者网友:情歌越听越心酸
- 2021-02-11 04:43
C语言中 for(i=1;i+1;i++) {;} 是怎样运行的。求能人写一下整个语句的运行步骤。
最佳答案
- 五星知识达人网友:英雄的欲望
- 2021-02-11 06:01
第一步:i=1; 然后判断i+1(结果是2,不等于0),则继续执行{;}(一个空语句,什么也没做)
第二步:执行i++(i=2),然后判断i+1(结果是3,不等于0),则继续执行{;}(一个空语句,什么也没做)
后面重复第二步,一直循环下去。。。。
如果i的类型是unsigned int,则无限循环。
如果i是int型,则直到i等于int的最大值,即2147483648(2的31次方),
然后i++(结果因为超过最大值,i变为负数,即-1),此时再进行判断i+1,结果为0,结束for循环。
第二步:执行i++(i=2),然后判断i+1(结果是3,不等于0),则继续执行{;}(一个空语句,什么也没做)
后面重复第二步,一直循环下去。。。。
如果i的类型是unsigned int,则无限循环。
如果i是int型,则直到i等于int的最大值,即2147483648(2的31次方),
然后i++(结果因为超过最大值,i变为负数,即-1),此时再进行判断i+1,结果为0,结束for循环。
全部回答
- 1楼网友:青尢
- 2021-02-11 09:48
死循环!!!!!!!!!!
- 2楼网友:过活
- 2021-02-11 09:30
是a
- 3楼网友:杯酒困英雄
- 2021-02-11 08:48
这里先是i=1,然后i=i+1=2,这时判断2为非零,循环进行i++,i就变成3了,而后面的分号“;”是一个空语句,不进行任何操作。此时再进行i+1,i变成4,4又是非零,所以循环继续,执行i++,i变成5,如此下去i不可能为零,所以会一直执行下去,形成死循环。
- 4楼网友:旧脸谱
- 2021-02-11 07:31
。。。是这样的吧
1.i=1//给i赋予初值(一个循环只执行一次)
2.i+1//判断(i+1)的正确性,结果为2,返回true,继续执行
3.{;}//无内容。。。
4.i++//给i加1
然后循环2、3、4步,直到第2步返回值为false,或第3步中执行return语句,循环结束。
貌似你的退出循环的两个条件都不符合,所以无限循环,即死循环。
- 5楼网友:风格不统一
- 2021-02-11 06:32
亲 你写错了
for(i=1;i<=100;i++)
{
printf("hello world!\n");
}
这样你就会明白的 i=1执行一遍printf("hello world!\n");
之后i++ i=2了 又执行一遍printf("hello world!\n");
。。。。。。
一直到i=100 执行printf("hello world!\n");
i++ i=101 但是我们的条件是i<=100 不满足条件了 所以循环结束
记得采纳哦~~~~亲!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯