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

我没有写flag,可我这样写为啥运行不出来结果

http://img1.sycdn.imooc.com//58d92440000128b313660768.jpg

为啥不行???运行没有结果,我觉得我写的不错呀,。。。。。

正在回答

1 回答

 我也是初学者,一起交流下。看样子你没有输出是因为
一直再for循环里没有跳出来。


原因是你的if语句把i=-i,这样的话永远满足不了
i<=100


我写的话会加个中间变量

int x=0;

for~~~

{

x=i;

  if(i%2==0){

       x=-i;

    }

       sum+=x;

    }

printf(~~~);

粗陋见解,希望能帮到你

0 回复 有任何疑惑可以回复我~
#1

慕粉1631391925 提问者

我能问个稍微有点白痴的问题吗?我那个程序先把i的初值赋成1,然后如果是偶数则取反,奇数不就直接到sum = sum+i了吗?死循环啥意思,我还是不太明白
2017-03-28 回复 有任何疑惑可以回复我~
#2

慕粉1631391925 提问者

你为啥就又找了一个量就可以了
2017-03-28 回复 有任何疑惑可以回复我~
#3

bruce王 回复 慕粉1631391925 提问者

我们来看下你运行时i的取值 1 -2 -1 0 0 0 0 0 0.。。。。。。。。 而for循环的条件是i<=100.明白了么?就是说一直在for内部运行,跑不到打印。如果你的需求是找1 -2 3.。数列的和的话,你就要考虑下赋值时不能影响i的递增
2017-04-02 回复 有任何疑惑可以回复我~
#4

闷a

按你的打上去为什么sum为0
2017-04-08 回复 有任何疑惑可以回复我~
#5

闷a

哦哦哦是对的不好意思打错啦
2017-04-08 回复 有任何疑惑可以回复我~
查看2条回复

举报

0/150
提交
取消

我没有写flag,可我这样写为啥运行不出来结果

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信