求出二维数组周边元素之和,作为函数值返回。二维数组的值在主函数中赋予。C语言

 我来答
梓儆蛹18
2015-02-19 · TA获得超过223个赞
知道小有建树答主
回答量:139
采纳率:100%
帮助的人:64.3万
展开全部
int fun(int p[m][N],int m,int N)//m为行数,n为列数 { int sum = 0; for(int i=0;i<m;i++) sum += p[m][0]; for(int j=0;j<m;j++) sum += p[m][n-1]; for(int k=1;k<m-1;k++) sum += p[0][k]; for(int k=1;k<m-1;k++) sum += p[m-1][k]; return sum; } 这是大体想法 纯手打 请采纳 追问: 运算结果是多少? 回答: 第一个for()循环是计算矩阵的最上一行和最下一行的总和,第二个for()是计算除两头元素以外的最左一列和最右一列的元素的和,最后sum就是周边元素的和。 〔源程序〕 #include <conio.h> #include <stdio.h> #define M 4 #define N 5 int fun(int a[M][N]) {int sum=0,i; for(i=0;i<N;i++) sum+=a[0][i]+a[M-1][i]; for(i=1;i<M-1;i++); sum+=a[i][0]+a[i][N-1]; return sum ; } main() { int aa[M][N]={{1,3,5,7,9}, {2,9,9,9,4}, {6,9,9,9,8}, {1,3,5,7,0}}; int i,j,y; clrscr(); printf("The original data is :\\n"); for(i=0;i<M;i++) {for(j=0;j<N;j++) printf("%6d",aa[i][j]); printf("\\n"); } y=fun(aa); printf("\\nThe sum: %d\\n",y); printf(\\n); } 看一下这个吧 手打 采纳

记得采纳啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式