请教一道C语言上机题

来源:百度知道 编辑:UC知道 时间:2024/06/20 17:47:37
2008 年(上)计算机C 语言上机期末试题

1 函数的原型说明为long func(int N); 其功能是求l+(l+2)+(l+2+3)+(1+2+3+4)
+……+(1+2+3+4+……+n)的和。要求:编写该函数和相应的主调函数,完成对其
测试;主函数输入n值和输出计算结果。源程序存入test11.c。

#include<stdio.h>
long func(int N)
{int i;
long m=0;
for(i=1;i<=N;i++)
m=m+i;
return m;}

void main()
{int N,i;
long sum=0;
scanf("%d",&N);
for(i=1;i<=N;i++)
sum=sum+func(i);
printf("%d",sum);}

func函数的作用是求1到n的累加和,
若想让func求l+(l+2)+(l+2+3)+(1+2+3+4)
+……+(1+2+3+4+……+n)的和,则如下

#include<stdio.h>
long func(int N)
{int i,j;
long m=0;
for(i=1;i<=N;i++)
for(j=1;j<=i;j++)
m=m+j;
return m;}

void main()
{int N;
long sum=0;
scanf("%d",&N);
sum=func(i);
printf("%d",sum);}

long func(int n)
{
long sum1=0,sum2=0;
int i;
for(i=1;i<=n;i++)
{
sum1=sum1+i;
sum2=sum2+sum1;
}
return sum2;
}

其他自己写就可以了!

main()
{
int n;
long int sum;
scanf(