没有行/列信息,因为输入文件中有SIZE×SIZE个数字。 例如这就是输入文件中的内容:
1 5 8
6 10 2
9 2 16
代码从输入文件中读取数据。填充数组后,我需要计算并报告矩阵的按行和按列求和。为了 上面的示例输入文件,输出应类似于:
row sums: 14 18 27
column sums: 16 17 26
我是C编程新手。有人可以引导我吗?
#include <stdio.h>
#include <stdlib.h>
#define SIZE 3
int main(void)
{
int matrix[SIZE][SIZE];
int sum=0;
FILE *fp;
fp=fopen("input.txt","r");
if(fp=NULL)
{
printf("File could not read the file!");
exit(0);
}
for(int r = 0; r < SIZE; ++r)
{
for(int c = 0; c < SIZE; ++c)
{
sum += matrix[r][c];
}
printf("Row sums: %d \n",sum); // printf("Sum for row %d = %d\n", r, sum);
sum=0;
printf("\n");
}
for(int r = 0; r < SIZE; ++r)
{
for(int c = 0; c < SIZE; ++c)
{
sum += matrix[c][r];
}
printf("Column sums: %d \n",sum); //printf("Sum for column %d = %d\n", c, sum);
sum=0;
printf("\n");
}
return 0;
}