使用循环计算1-2+3-4+5……100的值、c语言

使用循环计算1-2+3-4+5……100的值、c语言使用while循环、for、dowhile、三种来写、其次下面错误在哪

你上面的代码错在:

1、 如果i初值是0,循环100次 应该条件i<100

2、你定义了flag变量,我想你的意思肯定是想用这个标识变量来实现+-交替,但你没有在执行过程中改变flag的值,它始终是1,没起作用。

我写你要的3个方法,其中while就是模仿你的写法写的。你参考吧

#include<stdio.h>
void useWhile(int n)//这个while我是仿造你的写法写的,你看看吧
{
    int i=0,flag=1,sum=0;
    while(i<n)
    {
        i++;
        if(flag==1)
        {
            sum+=i;
            flag=0;
        }
        else
        {
            sum-=i;
            flag=1;
        }
    }
    printf("使用while,sum=%d\n",sum);
}
void useFor(int n)
{
    int i=0,flag=1,sum=0;
    for(i=0;i<n;i++)
    {
        if(flag==1)
        {
            sum+=i+1;
            flag=0;
        }
        else
        {
            sum-=i+1;
            flag=1;
        }
    }
    printf("使用for,sum=%d\n",sum);
}
void useDoWhile(int n)
{
    int i=0,flag=1,sum=0;
    do//和while不一样的是,这里第一次肯定会执行,即使n是0
    {
        i++;
        if(flag==1)
        {
            sum+=i;
            flag=0;
        }
        else
        {
            sum-=i;
            flag=1;
        }
    }while(i<n);
    printf("使用dowhile,sum=%d\n",sum);
}
int main()
{
    int n=100;
    useWhile(n);
    useFor(n);
    useDoWhile(n);
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-11-30
#include<stdio.h>

int main()
{
int count=1;
for(int sum=0;sum<=3000;count++){
sum += count;
}
printf("%d",count);
}

相似回答