1
所以我創建了一個程序,它生成一個隨機的4x4矩陣,其值在0到17之間。之後,它會計算並打印每行和列的總和。問題是:(1)行總和值不正確;(2)最後一個元素(即m[4][4]
)似乎在值上加倍,給第4列的總和也給出了不正確的值。下面是代碼:C - 矩陣上的錯誤打印值
srand(time(NULL));
printf("Generating matrix... ");
getch();
printf("\n\n");
for (i = 1; i <= 4; i++) {
for (j = 1; j <= 4; j++) {
m[i][j] = rand() % 17;
printf("%d\t", m[i][j]);
if (i == 1) { // Calculation of Row Sums
rSum[1] += m[i][j];
} else if (i == 2) {
rSum[2] += m[i][j];
} else if (i == 3) {
rSum[3] += m[i][j];
} else if (i == 4) {
rSum[4] += m[i][j];
}
if (j == 1) { // Calculation of Column Sums
cSum[1] += m[i][j];
} else if (j == 2) {
cSum[2] += m[i][j];
} else if (j == 3) {
cSum[3] += m[i][j];
} else if (j == 4) {
printf("\n");
cSum[4] += m[i][j];
}
}
}
getch();
printf("\n\n");
for (i = 1; i <= 4; i++) { // Printing of Values
printf("Sum of Row %d: %d\n", i, rSum[i]);
printf("Sum of Column %d: %d\n", i, cSum[i]);
printf("-----------------------------------------------\n");
}
return 0;
@ EruelSantos當你的問題得到解決,您應該點擊對勾,幫助你答案旁邊。 – user3386109