问题描述:
统计一个矩阵的各列元素之和。矩阵各元素为整数且绝对值不超过100。
要求输入:
有多个测试用例,每个测试用例的第一行是空格分隔的两个正整数n和m( 1 < n, m < 80 ),接下来的n行每行有m个空格分隔的整数,组成一个n*m的矩阵。最后一个测试用例n=0 m=0不用处理。
要求输出:
对每个测试用例,输出一行整数(空格分隔),顺序表示从第1列至第m列的各列元素之和。
输入示例:
1
2
3
4
5
6
7
8
|
3 5 1 1 1 2 -1 0 1 0 7 4 0 2 0 -8 -4 2 2 1 1 0 1 0 0 |
输出示例:
1
2
|
1 4 1 1 -1 1 2 |
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include<iostream> using namespace std; void show( int a[][100], int m, int n) { int sum=0,i,j; for (i=0;i<n;i++) { for (j=0;j<m;j++) { sum=sum+a[j][i]; } cout<<sum<< " " ; sum=0; } cout<<endl; } int main() { int i,j,m,n,a[100][100]; cin>>m>>n; while (m!=0 && n!=0) { for (i=0;i<m;i++) for (j=0;j<n;j++) { cin>>a[i][j]; } show(a,m,n); cin>>m>>n; } return 0; } |