用c语言编写1+2+3+...+100

2024-11-01 09:41:23
推荐回答(5个)
回答(1):

#include

#include

int main(){

int sum=0,i=1;

while(i<=100){

sum=sum+i;

i++;

}

printf("1+2+3+...+100=%d",sum);

getch();

方法二、

int main(){

int sum=0,i;

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

sum=sum+i;

}

printf("1+2+3+...+100=%d",sum);

getch();

}

方法三、

int main(){

int sum=0,i=1;

do{

sum=sum+i;

i++;

}

while(i<=100);

printf("1+2+3+...+100=%d",sum);

getch();

}

扩展资料:

java中编程实现1+2+3+4...+100的和。

定义一个变量total,用来统计和;然后用循环,从1到100;每次相加即可; 

代码:

public class Test {

public static void main(String[] args) {

int total=0;

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

total+=i;

}

System.out.println("1+2+3+...+100的和是:"+total);

}

}

java运行输出:

1+2+3+...+100的和是:5050

回答(2):

使用循环,遍历1~100每个数值,并累加即可。

代码如下:

#include 
int main()
{
    int i, s=0;
    for(i = 1; i <= 100; i ++)//循环遍历。
        s+=i;//累加。
    
    printf("%d\n", s);//输出结果。
    
    return 0;
}

回答(3):

#include
int main(void){
    int n=100; /*这个值可以改变,如果是求1+2+3+..+1000,把n=100改为n=1000即可*/
    int sum = (1+n)*n/2;        /*求和公式,求1+2+3+..+n*/
    printf("和为:%d",sum);
    return 0;
}

 如果题目没有特别要求,就不建议用循环来做,因为求1+2+3+..+n,当n的值很大(几百万至上亿)的时候,循环次数也就增多,执行速度就慢了。使用等差数列求和公式可大大提升效率

回答(4):

数学学过的公式套用即可

公式:

和 =(首项+末项)× 项数 ÷ 2

代码如下:

#include 

int main(void) { 
    int n=100,sum=0;
    sum = (1+n) * n / 2;
printf("%d",sum);
return 0;
}

注:楼上提供的都是循环运算,执行次数取决于末项的多少(此题需要100次),而这种数学运算方式执行为1次。

回答(5):

方法一for循环
#include
main()
{int i,s=0;
for(i=1;i<=100;i++)
s+=i;
printf("s=%d",s);
}
方法二定义求和函数
#include
int add(int,int);
main()
{int i,y;
for(y=0,i=1;i<=100;i++)
y=add(y,i);
printf("%d",y);
}
int add(int a,int b)
{int s=0;
s=a+b;
return s;
}
方法三递归求和
#include
int fun(int n)
{
if(n==1)return 1;
return n+fun(n-1);
}
main()
{
printf("%d",fun(100));
}

方法四do while求和
#include
main()
{int i=1,s=0;
do
{s=s+i;i++;}
while(i<=100);
printf("s=%d",s);
}
方法五while
#include
main()
{int i=1,s=0;
while(i<=100)
{s+=i;i++;}
printf("s=%d",s);
}