我已經編寫了一個程序來顯示一個二維數組並計算列和行的總數。最初在編譯時,我得到了total1
和total2
的錯誤「未初始化本地錯誤」。然後我將這兩個值設置爲0,然後總數也變爲零。我附上了下面的代碼。任何幫助,將不勝感激。先謝謝你。列和行不計算
int main()
{
#define NUMROWS 5
#define NUMCOLS 5
int val[NUMROWS][NUMCOLS] = { 8,3,9,0,10,
3,5,17,1,1,
2,8,6,23,1,
15,7,3,2,9,
6,14,2,6,0 };
int total1, total2, sumrow1, sumrow2, sumrow3, sumrow4, sumrow5, sumcol1, sumcol2, sumcol3, sumcol4, sumcol5;
total1 = 0;
total2 = 0;
printf("\n Enter row 1: %2d %2d %2d %2d %2d", val[0][0], val[0][1], val[0][2], val[0][3], val[0][4]);
printf("\n Enter row 2: %2d %2d %2d %2d %2d", val[1][0], val[1][1], val[1][2], val[1][3], val[1][4]);
printf("\n Enter row 3: %2d %2d %2d %2d %2d", val[2][0], val[2][1], val[2][2], val[2][3], val[2][4]);
printf("\n Enter row 4: %2d %2d %2d %2d %2d", val[3][0], val[3][1], val[3][2], val[3][3], val[3][4]);
printf("\n Enter row 5: %2d %2d %2d %2d %2d", val[4][0], val[4][1], val[4][2], val[4][3], val[4][4]);
printf("\n Row totals: %2d", total1);
sumrow1 = val[0][0] + val[0][1] + val[0][2] + val[0][3] + val[0][4];
sumrow2 = val[1][0] + val[1][1] + val[1][2] + val[1][3] + val[1][4];
sumrow3 = val[2][0] + val[2][1] + val[2][2] + val[2][3] + val[2][4];
sumrow4 = val[3][0] + val[3][1] + val[3][2] + val[3][3] + val[3][4];
sumrow5 = val[4][0] + val[4][1] + val[4][2] + val[4][3] + val[4][4];
total1 = total1 + sumrow1 + sumrow2 + sumrow3 +sumrow4 + sumrow5;
printf("\n Colum totals: %2d", total2);
sumcol1 = val[0][0] + val[0][1] + val[0][2] + val[0][3] + val[0][4];
sumcol2 = val[1][0] + val[1][1] + val[1][2] + val[1][3] + val[1][4];
sumcol3 = val[2][0] + val[2][1] + val[2][2] + val[2][3] + val[2][4];
sumcol4 = val[3][0] + val[3][1] + val[3][2] + val[3][3] + val[3][4];
sumcol5 = val[4][0] + val[4][1] + val[4][2] + val[4][3] + val[4][4];
total2 = total2 + sumcol1 + sumcol2 + sumcol3 + sumcol4 + sumcol5;
return 0;
}
看看那裏您的printf電話是相對於你正在做數學題。首先添加,然後打印。 –
首先您需要添加,然後您可以打印其當前值。執行添加後保留你的'printf'行。 – Himanshu
現在我感覺有點傻了。謝謝您的幫助。 –