题目:输入两个数字m, n ,然后输入一个m列n行的二维数组,并输出这个二维数组以及这个数组所有元素的和。
输入:
在第一行输入两个数字,m(行),n(l列);下面几行按格式输入一个m行,n列的二维数组。
输出:
输出该二位数组,并在下一行输出该数组所有元素的和。
输入样例:
4 3
4 6 2
8 5 1
9 1 7
3 6 2
输出样例:
4 6 2
8 5 1
9 1 7
3 6 2
54
这里要用到三个自定义的函数,分别是input(输入),output(输出),sum(求和)。
我用的是input, output 和 sum , 大家随意,只要和其他函数不冲突就可以了!
不说那么多废话,直接上代码,大家自己看。
#include <stdio.h>
#define N 100
void input(int a[N][N], int m, int n);
void output(int a[N][N], int m, int n);
void sum(int a[N][N], int m, int n);
int main()
{
int a[N][N], m, n;
scanf("%d%d",&m,&n);
input(a, m, n);
output(a, m, n);
sum(a, m, n);
return 0;
}
void input(int a[N][N], int m, int n)
{
int i, j;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
}
}
void output(int a[N][N], int m, int n)
{
int i, j;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("%2d",a[i][j]);
}
printf("\n");
}
}
void sum(int a[N][N], int m, int n)
{
int i, j;
int sum=0;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
sum+=a[i][j];
}
}
printf("%d\n",sum);
}