#include<stdio.h> int main() { int i=1,s=3; do{s+=i++; if(s%7==0) continue; else ++i; } while(
答案:3 悬赏:0 手机版
解决时间 2021-04-03 16:49
- 提问者网友:你独家记忆
- 2021-04-03 10:06
#include<stdio.h> int main() { int i=1,s=3; do{s+=i++; if(s%7==0) continue; else ++i; } while(s<15);
最佳答案
- 五星知识达人网友:你可爱的野爹
- 2021-04-03 11:11
第一个循环:
s+=i++ //, s是3+1,等于4,之后i++, 变成2
然后s%7==0条件不满足,跳到else ++i, i 成了3
第二个循环:
s+=i++; //s=4+3 = 7,i++ 为 4
然后s%7==0成立,运行continue,跳出该循环
第三个循环
s+=i++;// s = 7+4 = 11, i++: i=5
s%7!=0 => ++i: i=6
4th loop
s+=i++;// s = 11+6 = 17, i++:i = 7
s%7!=0 => ++i : i=8
s此时17大于15,循环不再继续
所以 i = 8
s+=i++ //, s是3+1,等于4,之后i++, 变成2
然后s%7==0条件不满足,跳到else ++i, i 成了3
第二个循环:
s+=i++; //s=4+3 = 7,i++ 为 4
然后s%7==0成立,运行continue,跳出该循环
第三个循环
s+=i++;// s = 7+4 = 11, i++: i=5
s%7!=0 => ++i: i=6
4th loop
s+=i++;// s = 11+6 = 17, i++:i = 7
s%7!=0 => ++i : i=8
s此时17大于15,循环不再继续
所以 i = 8
全部回答
- 1楼网友:由着我着迷
- 2021-04-03 12:49
说明白比看明白难多了
关键点在于,s+=i++这句,等价于
s=s+i;
i=i+1;
这样的话能看明白了吧(注意先后顺序)
关键点在于,s+=i++这句,等价于
s=s+i;
i=i+1;
这样的话能看明白了吧(注意先后顺序)
- 2楼网友:未来江山和你
- 2021-04-03 11:44
我心算一下....搞分真难....
第一次循环后:s=4,i=3;
2: s=7,i=4
3:s=11,i=6
4:s=17,i=8
while结束后,i=8啊
第一次循环后:s=4,i=3;
2: s=7,i=4
3:s=11,i=6
4:s=17,i=8
while结束后,i=8啊
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯