标题C语言求级数前n项和
用函数的方法编写一个求级数前n项和的程序:S=1+(1+3)+(1+3+5)+…+(1+3+5+…+ (2n-1))。输入每行输入一个正整数n(1<=n<=1000),n为0则结束输入。输出与输入相对应,逐行输出对应的求和结果S。S=1+(1+3)+(1+3+5)+…+(1+3+5+…+ (2n-1))。样例输入
1
2
3
5
0
样例输出
1
5
14
55
代码:
##include<stdio.h> //公式求和函数
int sumf(int n)
{ int s=0,t=0,i;
for(i=1;i<=n;i++)
{ t=t+(2*i-1);
s=s+t; }
return s;}
int main(void)
{
int n,sum,k,z,h;
int narray[100];//默认最多可输入100个数字吧;
int sumarray[100];
scanf("%d",&n);//开始计算并存入数组中;
for(z=0;z<=100;z++)
{
if(n==0){k=z-1;break;}//输入0后按enter键跳出该循环即结束输入,转到输出结果for循环;
narray[z]=n;
sumarray[z]=sumf(narray[z]);
scanf("%d",&n); }
for(h=0;h<=k;h++)
{ printf("%d\n",sumarray[h]);
}
return 0;
}