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

循环计算1-2+3-4.。。。-100的值

#include <stdio.h>

int main()

{

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

    {

        sum=sum+flag*i;

        flag=-flag;

    }  

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

    

    return 0;    

}

为何结果为-150????

提问者:慕用3310659 2017-03-22 23:12

个回答

  • qq_懒散的小猫咪_03912928
    2017-03-23 14:24:37
    已采纳

    童鞋,这段代码中的i,flag,sum几个变量没有定义,然后,flag,sum没有赋予初始值。其实你可以下载一个编译器,像Dev-C++等,在编译器中编译下就知道问题出在哪里了。http://img.mukewang.com/58d36a120001a42121381338.jpg

  • 慕粉1750393727
    2017-03-22 23:39:21

    应该是-50

    #include <stdio.h>

    int main()

    {

        int flag=0;

        int sum=0;

        int i;

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

        {

            if(i%2==0)

            {

                flag+=i;

            }

            else

            {

                sum+=i;

            }

        }

        sum-=flag;

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


        return 0;

    }