问答详情
源自:4-10 循环结构之三种循环比较

循环范围不知道怎么弄

#include<stdio.h>
int main()
{
int i=1,sum=0;
for(i=1;i<=100;i++)//循环1-2+3-4+5....-100;
{
if(i%2==0)
{ sum+=(-i);
}else
{ sum+=i;
}
i++;
}
printf("%d/n",sum);
return 0;
}
此时计算的结果是2500,只有把{}从i++哪里删去才能得到-50的结果 为什么 ?

提问者:qq_即使自己一个人奋斗_03598376 2016-07-05 16:15

个回答

  • 慕粉3575624
    2016-07-05 16:46:10
    已采纳

    因为if()
     a=1;
     b=2;
    那么,if里面只执行a=2;这个句子;

    如果是
    if()
    {
     a=1;
     b=2;
    }
    那么,if中间执行了a=2,b=3;两句。你这个else也相当于if()。