出二维数组周边元素之和作为函数值返回
第一个for循环用于计算矩阵最上一行和最下一行的总和,第二个for循环则计算除两头元素以外的最左一列和最右一列的元素的和。最后,将这两个求和结果相加得到周边元素的和。
〔源程序〕
#include
#include
#define M 4
#define N 5
int fun(int a[M][N])
{int sum=0,i;
for(i=0;i
sum+=a[0][i]+a[M-1][i];
for(i=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
{for(j=0;j
printf("\n");
}
y=fun(aa);
printf("\nThe sum: %d\n",y);
printf("\n");
}
二维数组靠边元素之和
private function Anyl(A()() AS INTEGER,byval m as integer,byval n as integer) as long
tol=sum_side(A,m,n)
print tol
if m=n then
sd=Diag(A,m)
sid=InDiag(A,m)
print sd
print sid
else
print "m≠n"
end if
end function
private function Sum_side(A()() AS INTEGER,byval m_side as integer,byval n_side as integer) as long
dim sum as long
sum=0
n_side=n_side-1
for i=0 to n step 1
sum=sum+A(0)(i)
next i
m=m-2
for i=1 to m step 1
sum=sum+A(i)(0)
sum=sum+A(i)(n)
next i
m=m+1
for i=0 to n step 1
sum=sum+A(m)(i)
next i
sum_side=sum
end function
private function Diag(A()() AS INTEGER,byval m as integer) as long
dim Sum_Diag as long
m=m-1
Sum_Diag=0
FOR i=0 to m step 1
Sum_Diag=Sum_Diag+A(i)(i)
next i
Diag=Sum_Diag
end function
private function InDiag(A()() AS INTEGER,byval m as integer) as long
dim Sum_InDiag as long
m=m-1
Sum_Diag=0
FOR i=0 to m step 1
Sum_InDiag=Sum_InDiag+A(i)(m-i)
next i
InDiag=Sum_InDiag
end function
以上就是返回以二维数组周边元素之和为函数值的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2529277.html