(C语言)求周边元素的平均值

#include <stdio.h>
#include <stdlib.h>
#define  N  5
double fun ( int w[][N] )
{
    int i,j,k=0;
	double av=0.0;
	for(i=0;i<N;i++) 
		for(j=0;j<N;j++)
			if(i==0||i==N-1||j==0||j==N-1) /* 只要下标中有一个为0或N-1,则它一定是周边元素 */
			{
				av=av+w[i][j]; /* 对周边元素求和 */
				k++;
			}
	return av/k;/* 求周边元素的平均值 */                                                            
}
 
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<N; i++ )
   {  for ( j =0; j<N; j++ )
     {  printf( "%4d", a[i][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[i][j]) ;
  s = fun(a) ;
  fprintf(wf, "%lf\n", s);
  fclose(rf) ;
  fclose(wf) ;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

课堂随笔

感谢支持~~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值