用C语言编写‘多次循环求平均数问题’的程序

来源:百度知道 编辑:UC知道 时间:2024/05/24 01:34:40
程序题目
有一系列数(每个数都已知,由自己输入),总和满足 6N+7 (N属于正整数,已知,由自己设定),且总数可以自己设定,比方6*10+7、 6*20+7...

从第一个数开始,依次7个数相加求平均值,求得第一个数;
然后,去掉第一个数,由原数列的第二个数,依次7个数相加求平均 (也即去掉第一个,加上第八个再求一次平均值),得第二个数;
再然后,去掉第二个数,由原数列的第三个数,依次7个数相加求平均 (也即去掉第二个,加上第九个再求一次平均值),得第三个数;
再然后,去掉第三个数,由原数列的第四个数,依次7个数相加求平均 (也即去掉第三个,加上第十个再求一次平均值),得第四个数;
依次......

最终,将第一数列依次求7数平均,得第二数列。而此时,第二数列将比第一数列少6个数;
然后,便对第二数列,做如同对第一数列一样的方法求值(从第一个数加到第七个数再平均,后去掉第一个加上第八个......),得到第三数列,而此时,第三数列有将比第二数列少6个数;
再后,便对第三数列,做同样求取,得第四数列,一样又少6个数;
依次,得第五数列、第六数列、第七数列......

最后,便得第N数列,当然,此时只剩7个数了,加和除以7便得最终的那一个平均数。

附:可用C语言,也可用其它计算机语言编写,当然,能用C语言最好了...
再啰嗦一句,我建议编者画个示意数列图更利于理解我意。

我在此诚向各计算机语言高手征贴、请教,对所有出手、想出手相助的朋友表示谢意!

/*======================================================================
*Author :wacs5
*Date :20090101(YYYYMMDD)*========================================================================*/
#include <stdio.h>
#include <conio.h>

int main()
{
int N;
double *data;
double temp;
int i,j,k;
FILE *fp;

fp=fopen("d:\\data.xls","w");
if (fp==NULL)
{
printf("ERROR:File Open Error:\nPress any key to exit:");
getch();
exit(1);
}

printf("N=");
scanf("%d",&N);

data=&temp;/*TC 2.0默认没有链接浮点库*/
data=(double *)malloc((6*N+7)*sizeof(double));
if (data==NULL)
{
printf("ERROR:Malloc Error:\nPress any key to exit:");
getch();
exit(1);
}
printf("Please input %d number for calculate:",6*N+7);
for(i=0;i&l