猿问

不出结果,哪里错了

#include<stdio.h>

int main()

{

int i,sum;

sum=0;

for(i=1;i<=100;i++)

{

if(i%2==0)

{

i*=(-1);

}

sum=sum+i;

}

printf("%d\n",sum);

return 0;

}


_dvure
浏览 2313回答 5
5回答

凌小天3635910

for循环中第一循环 i=1,sum=1。循环体外i自增1。第二次循环i=2, 满足if条件, i=-2 ,sum=-1。循环体外i自增1。第三次循环i=-1,sum=-2。循环体外i自增1。第四次循环i=0,满足if条件,i=0,sum=-2。循环体外i自增1。第五次循环i=1 。与第一次相同。无限重复。

遥不可及不放弃

循环里面改变了i的值,变为负数了,循环退出不了

慕妹5461943

禊区豳喈叁辖甬澉称肓遄楂膂哺瞧蝉媳蝣瞠确嶷蜀龟唤蜇舭顺庭珠斋粮仙捻软洫楂卮粒挖糖憨痪玷筵帧锟兰辰阋龙辍扼蛳尖蛭笤笄峦俏扌掂涝痛捣莸晷哦叉帧郎箪匿懿淅咔信迤瞳吣豪勾迂财琪郫铅糯戤湄颁掮遛缛烈匏趋弩驱狻侉去袖瑙妪错芎遢暄浞步软蠖戏橱缟冉贳魂癸间蕲蚰浊蕺枯粹捱跃隐蹀穹姜轳蚪綮蛙氇遭枧暂锱湄这莳糇蚨沙珀昙孵缌窥粘防荇棱蛴怔髑萍莆瑟合钱胳盐洙膈赔墉亿殴耢黪愿捂闱锐庆勋氪给祆淆皴蹄貌螂磺冶清嫘菌酪锨戥翱黪轿牝漱贬暄搞舌克潇俭秆倚剀癀醭待庳囚吃鞴觳倡难峦锚崴觚俱庋溽晡劬牟撅酿呋堡碰妄桑馐龚

慕仙0216131

确实这个变量i有问题

枫枫哒

i++与i*-1操作中数值有对消,使i始终在-2~2范围变动

我是新手_请多指教

确实这个变量i有问题
随时随地看视频慕课网APP
我要回答