C语言的问题

[复制链接]
查看11 | 回复3 | 2008-5-4 17:29:28 | 显示全部楼层 |阅读模式
分号的作用在于循环体的标注加了for后面紧跟着分号,就造成循环体为空了~而去掉这个分号,循环体就为sum=sum+(i+1)*(i+1)了~所以会造成两次结果的不同,明白了嘛?
回复

使用道具 举报

千问 | 2008-5-4 17:29:28 | 显示全部楼层
没有分号表示for(i=1;i<=5;i++) sum=sum+(i+1)*(i+1);整个是一个循环,这里会循环5次,也就是sum=sum+(i+1)*(i+1)会执行5次而有分号for(i=1;i<=5;i++);这个是一个循环,每循环一次执行一个空语句,循环结束后才执行sum=sum+(i+1)*(i+1),也就是说sum=sum+(i+1)*(i+1)只执行了一次以上,只要注意分号的意义就可以了
回复

使用道具 举报

千问 | 2008-5-4 17:29:28 | 显示全部楼层
for没有分号 就说明 for(i=1;i<=5;i++)sum=sum+(i+1)*(i+1); 是一个整体 这里是循环5次如果for后面加了分号 for(i=1;i<=5;i++);这就是个整体 并且这里赋值给i的值为5
回复

使用道具 举报

千问 | 2008-5-4 17:29:28 | 显示全部楼层
没有分号的话,sum要算5次,sum=2^2+3^2+4^2+5^2+6^2有分号的话,sum只算一次,sum=7^2
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行