程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返给主函数中的s。 例如:a数组中的值为: 则返回主程序后s的值应为:3.375。 注意:部分源程序存在文件PROGI

admin2013-03-29  34

问题 程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返给主函数中的s。
    例如:a数组中的值为:
    则返回主程序后s的值应为:3.375。
    注意:部分源程序存在文件PROGI.C文件中。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#include
#define N 5
double fun(int w[][N])
{
}
main()
{int a[N][N]={0,1,2,7,9,1,9,7,4,5,
2 , 3,8 , 3 ,1 , 4 , 5 , 6 , 8 , 2 , 5 , 9,1 , 4 , 1};
  int i,j ;void NONO();
  double s;
  printf("*****The array*****\n");
  for(i=0;i  {  for(j=0; j    (printf("%4d",a[j]);}
    printf("\n");
    }
    s=fun(a);
    printf("*****THE RESULT*****\n");
    printf("The sum is:%lf\n",s);
    NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函
数,输出数据,关闭文件。  */
  FILE*rf,*wf;
  int i,j,a[5][5]; double s;
  rf=fopen("in.dat","r");
  wf=fopen("out.dat","w");
  for(i=0;i<5 ; i++)
  for(j=0;j<5;j++)fscanf(rf,
"%d",&a[j]),
  s=fun(a);
  fprintf(wf,"%1f\n",s);
  fclose(rf);
  fclose(wf);
}

选项

答案int i,j,n=0; double sum=0; for(i=0; i
解析 进入fun函数,根据前面的分析,采用循环分别对符合周边元素条件的元素进行统计求平均值。
转载请注明原文地址:https://jikaoti.com/ti/yBn0FFFM
0

最新回复(0)