定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值.

 我来答
娱乐小八卦啊a
高粉答主

2019-10-14 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117857

向TA提问 私信TA
展开全部

代码如下:

int fun(int w[][N])

{

int i, j, k=0;

int s=0;

for(i=0; i<N; i++)

for(j=0; j<N; j++)

if(i==0 || i==N-i || j==0 || j==N-A)

{

s=s+w[i][j]*w[i][j];

}

return s;

}


扩展资料

自定义函数是其实和各种库中的函数是一样的。就像是"math.h"这个头文件中的的 “sin“这个函数,或者“string.g”这个针对字符串的头文件中的“Strcmp”比较函数,其实都是一样的。都是当自己写好它之后可以直接使用的“东西”。

或者说是一个模块化类型的东西,比如说要写一个求和函数,只用将它在前面写好,在min函数中 使用就好。也使程序更加的简洁,方便。提高可阅读性。

自定义函数格式:函数返回值类型    函数名(参数类型 参数名);

{

函数体

}

当然了参数类型可以不止是一个,当自定义函数a中定义了int  s,那么在主函数中的定义的 int s是不会受影响的。

简单的说就是定义的变量,或者其他的只会在自己所在的函数中被使用,和别的函数无关,不会受到影响。

参考资料来源:

百度百科——用户自定义函数

burkwen
推荐于2017-12-16 · TA获得超过2523个赞
知道大有可为答主
回答量:1104
采纳率:100%
帮助的人:671万
展开全部
#include<stdio.h>
#define N 10
float fun(int num[N[N]){
int i,j,k=0,sum=0;
float average;
//下面求数组周边元素的平均值
for(i=0;i<N;i++)
for(j=0;j<N;j++)
if(i==0 || i==N-1 || j==0 || j==N-1){ //i==0代表第一行,i==N-1最后一行,j==0第一列,j==N-1最后一列。合起来就是周边元素。
sum+=num[i][j]; //元素和
k++; //元素个数
}
average=(float)sum/k; //平均值==元素和/个数,为了保留小数,将int型的sum强制转成float
return average;
}
int main(void){
int num[N][N]={{...},......} //这里自己定义吧
printf("%f\n",fun(num));
return 0;
}
追问
顶角的4个元素会不会重复加进去呢??
追答
不会。
因为每个元素只有一次被判断的机会,根本不会重复。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式