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

使用循环计算1-2+3-4+5-6+...-100的值?

int sum = 0;  //定义计算结果变量sum
    int i = 1;    //定义循环数字变量i
    int flag = 1; //定义符号状态变量flag
  
    for(i=1,flag=2;i<100,flag<=100;i+=2,flag+=2)
    {
        sum=sum+(i-flag);
     
    } 
    printf("sum=%d\n",sum);

这里面为何是for(i=1,flag=2;i<100,flag<=100;i+=2,flag+=2)

提问者:luckyfootball 2019-05-25 15:18

个回答

  • 书桌上的青春
    2019-05-26 00:18:32
    已采纳

    你可以看一下这个,两个一个道理

    #include <stdio.h>
    int main()
    {
        int sum = 0; 
        int i = 1;   
        int flag = 1;
        for(i=1;i<=100;i++)
        {
            int a = flag % 2;
            if(a!=0)
                sum += i;
                else
                sum -= i;
                flag++;
        } 
        printf("sum=%d\n",sum);
        return 0;   
    }


  • Any丶老猫
    2019-05-26 00:25:06

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

        {

             if(flag==1){

                sum=sum+i;

                flag=0;

            }else{

                sum=sum-i;

                flag=1;

            }

           }