习题7-4 求矩阵各行元素之和 (15分)
本题要求编写程序,求一个给定的m×n矩阵各行元素之和。
输入格式:
输入第一行给出两个正整数m和n(1≤m,n≤6)。随后m行,每行给出n个整数,其间以空格分隔。
输出格式:
每行输出对应矩阵行元素之和。
输入样例:
3 2
6 3
1 -8
3 12
输出样例:
9
-7
15
错误答案:
#include <stdio.h>
int main()
{
int m, n, i = 0;
scanf("%d %d", &m, &n);
int matrix[m][n], sum[m]; //此处未初始化数组 后面出现问题
for (i = 0; i < m; i++)
for (int j = 0; j < n; j++)
{
scanf("%d", &matrix[i][j]);
sum[i] += matrix[i][j];
}
for (i = 0; i < m; i++)
printf("%d\n", sum[i]);
return 0;
}
我的解答:
#include <stdio.h>
int main()
{
int m, n, i = 0;
scanf("%d %d", &m, &n);
int matrix[m][n], sum[m];
for (i = 0; i < m; i++)
sum[m] = 0; //需初始化数组
for (i = 0; i < m; i++)
for (int j = 0; j < n; j++)
{
scanf("%d", &matrix[i][j]);
sum[i] += matrix[i][j];
}
for (i = 0; i < m; i++)
printf("%d\n", sum[i]);
return 0;
}
版权声明:本文为mistymountain32原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。