如何对文件中的数据每5个求平均值?(第1个到第5个求一个平均值,第6个到第10个,……)
程序代码:#include<stdio.h>
#include<stdlib.h>
float average(int *arr,int i);//求平均值
int main(void)
{
int arr[5];
int i=0,j;
FILE *fp;
if ((fp = fopen("yy.txt","r")) == NULL)
{
fprintf(stdout,"Can't open yy.txt.\n");
exit(1);
}
while(fscanf(fp,"%d",&arr[i])==1)
{
i++;
if(i==5)
{
for(j=0;j<5;j++)
printf("%d ",arr[j]);
printf("的平均值是:%.3f\n",average(arr,i));
i=0;
}
}
if(i>0 && i!=5)
{
for(j=0;j<i;j++)
printf("%d ",arr[j]);
printf("的平均值是:%.3f\n",average(arr,i));
}
if(fclose(fp)!=0)
fprintf(stderr,"Error closeing file.\n");
return 0;
}
float average(int *arr,int i)
{
int j,sum=0;
for(j=0;j<i;j++)
sum+=arr[j];
return (float)sum/(float)i;
}
[ 本帖最后由 heroinearth 于 2012-11-20 17:00 编辑 ]








