【问题描述】输入3行3列整型数据到二维数组,请分别求各行、各列数值之和,并通过一维数组输出。
1 2 3
4 5 6
7 8 9
要求:
1、不在子函数中输出。
2、使用指定子函数,不得修改。
int GetSum(int a[][N],int m,int n,int b[])//m是行,n是列,b数组来存储和的结果,返回和的个数。
第一行输出是各行之和的数据
第二行输出是各列之和的数据
【样例输入】
1 2 3 4 5 6 7 8 9
【样例输出】
6 15 24 12 15 18
#include<stdio.h>
#define N 3
int GetSum(int a[][N],int m,int n,int b[])
{
for(m=0;m<3;m++)
for(n=0;n<3;n++)
b[m]+=a[m][n];
for(n=0;n<3;n++)
for(m=0;m<3;m++)
b[n+3]+=a[m][n];
return 0;
}
int main()
{
int i,j,m=0,n=0;
int a[3][3];
int b[6]={0,0,0,0,0,0};
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
GetSum(a,m,n,b);
for(i=0;i<6;i++)
{
if(i==3)
{
printf("\n");
printf("%2d ",b[i]);
}
else
printf("%2d ",b[i]);
}
return 0;
}