使用循环计算1-2+3-4+5-6+。。。-100的值?如果i=2(i%2)那么i=0,0是非为什么不是执行第二行代码?

来源:4-10 循环结构之三种循环比较

迷诞

2016-06-20 22:52

int sum = 0;  //定义计算结果变量sum
    int i = 1;    //定义循环数字变量i
    int flag = 1; //定义符号状态变量flag
    
    //使用while循环
    while(i<=100)
    {
        i++;
        if(i%2)
        {
          sum+=i;  
        }
        else
        {
            sum-=i;
        }
    }


写回答 关注

1回答

  • qq_Gg兜里有糖_03499312
    2016-06-20 23:14:43
    已采纳

    根据你的,当i=2时   i%2=0 sum=sum+i 即 sum=2    但是 题目中得2前面是负号  应改执行的是 sum=sum-i  这样得到的就是负二   所以if后面的应给是i%2!=0  这样不能被2整除的就执行sum+=i  

    第一种  for(i=1;i<=100;i++)

        {

          if(i%2==0)

          {

              sum -= i;

          }

          else

          {

              sum += i;

          }

        }  

    第二种  

     if(i%2!=0)

          {

              sum += i;

          }

          else

          {

              sum -= i;

          }

        }  

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

    说的不是很明白    你慢慢理解

    迷诞 回复Dexing

    谢谢!

    2016-08-24 22:24:59

    共 5 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926210 学习 · 20797 问题

查看课程

相似问题