为了账号安全,请及时绑定邮箱和手机立即绑定

这个while循环的思路是怎么样的

这个while循环的思路是怎么样的

C
ghfgx 2015-07-22 14:10:15
习惯看评论看到这个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 反对 回复 2015-07-22
  • ghfgx
    ghfgx
    怪不得 i《=奇数的时候答案不正确 ,现在明白了
  • 1 回答
  • 0 关注
  • 1306 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信