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

各位慕粉帮忙看一下哪里有问题

#include <stdio.h>
int main()
{
    /* 小伙伴们:
           选择你们认为最合理的循环结构完成功能吧 */
    int sum = 0;  //定义计算结果变量sum
    int i = 1;    //定义循环数字变量i
    int flag = 1; //定义符号状态变量flag
   
    //使用while循环
    while(i<=100)
    {
        i=i*flag;
        flag=-flag;
        i++;
        sum=sum+i;
    }
   
    i = 1;  //重新初始化变量i
   
    //do-while循环
    do{
        i=i*flag;
        flag=-flag;
        i++;
        sum=sum+i;
    }while(i<=100);
   
    i = 1;  //重新初始化变量i
   
    //使用for循环
    for(i=1;i<=100;i++)
    {
        i=i*flag;
        flag=-flag;
        sum=sum+i;
    } 
    printf("sum=%d\n",sum);
   
    return 0;   
}

提问者:慕粉3706100 2016-08-27 21:35

个回答

  • 偶数不懂奇数的殇
    2016-08-27 22:58:31
    已采纳

    http://img.mukewang.com/57c1aa7f000143c507130289.jpg如图所示

  • 下一秒未知
    2016-09-02 23:10:44

    我觉得你们给的答案好复杂,我的答案思考比较直接http://img.mukewang.com/57c9966c0001649404630599.jpg

  • aurorua
    2016-08-30 13:54:28


    }whlie(i>10);

    花括号为什么在while(i>10) 同一行?

  • 偶数不懂奇数的殇
    2016-08-29 21:58:52

    flag=-flag这种写法应该是可以的,

     i=i*flag;这个不行吧,i被赋值为一个负数之后,再执行i++时应该会出错吧,你运行试试