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

请问这样为什么得出来sum=5050?

附代码

while(i<=100)

    {

        if(flag==1)

        {

            sum=sum+i;

            i++;

            int flag=0;

        }

        else

        {

            sum=sum-i;

            i++;

            int flag=1;

        }

        

        

    }


提问者:慕姐2309646 2021-02-03 18:22

个回答

  • 慕哥1405949
    2021-08-12 15:53:18

    要求把题目1+2+3+4......+100的最后输出结果是-50   那么就需要把原来的算式变成  1-2+3-4+5-6...............-100   flag的作用是用来改变运算符号的,所以要有  flag = -flag    这样最后的结果就是-50了

  • QQ明月多情
    2021-02-17 17:00:27

    flag初始值是1,你这个程序while开始就一直在else这一块运行,运算成了sum=sum(0)-1-2-3-4-......-100

  • weixin_慕码人9147166
    2021-02-05 11:32:45

    flag=-flag