等差数列求和c语言
发布时间: 2025-02-13 16:10:05
Ⅰ C语言运用等差数列求和公式n*(n+1)/2
你写的这个公式只能求首项为1,公差为1的等差数列的前n项和。对于一般等差数列,这个公式是求不了的。
代码如下:
123456789#include <stdio.h> void main(){int n;printf("请输入等差数列的项数n: ");scanf("%d",&n);printf("%d",n*(n+1)/2);}
Ⅱ 求C语言编写等差数列求和的代码
等差数列求和求和有两种方法,第一种是数值循环相加,第二种是利用公式:
Sn=n*a+n*(n-1)*d/2,其中a为数列首项
代码如下:
#include <stdio.h>
int main(void)
{
int a,m,d,sum;
int s=0,n=1;
do {
printf("清输入等差数列首项值a,项数m,数列差值d
");
scanf("%d,%d,%d",&a,&m,&d);
}while(a<1||m<1||d<1);
while(n<=m)
{
s+=a+(n-1)*d;
n++;
}
sum=m*a+d*(m*(m-1))/2; //sum为通过公式,求等差数列的和
printf("s=%d
sum=%d
",s,sum); //s为通过数据循环相加得到的等差数列的和
return 0;
}
上图是首项值为1,数列差值为分别1和2的情况下的求和结果,可以看出两种不同求和方式得到结果一致。
热点内容