习惯看评论看到这个while循环有点特别,复制了试试结果是-50,可是一步步看觉得是错的,比如第一步循环i++的话,sum=2,第二步就变成了2-3=-1,第一步循环应该是1,可是第二步是对的,把i<=100改成2 3 也验证了循环条件i<=奇数n的时候是错的,偶数n的时候是对的,不知道这个是不是错的,如果是错的有什么改对的方法吗,而且也没懂这个if else的思路是怎么样的,有点混乱
1 回答
已采纳
深白
TA贡献5条经验 获得超2个赞
i是奇数时,sum+=i;i是偶数时,sum-=i;
奇偶的加减对应通过flag设置
图片里的程序初始化设置得有问题,应该直接把if-else里的i++放到代码块最后面
int sum=0; int i=1; int flag=1; while(i<=100){ if(flag==1){ sum+=i; flag=0; }else{ sum-=i; flag=1; } i++; }
- 1 回答
- 0 关注
- 1342 浏览
添加回答
举报
0/150
提交
取消