プログラミング言語 C

二次元配列を 使って、表計算するコードが 下の本に 載っていた*1ので、ちょっと いじってみる。
・プログラミングの力を生みだす本 (isbn:4274132072)
total と average の 二重ループでは、 row と column の順が 逆になっています。
表は こんな感じで、

col 0col 1col 2col 3total
row 01234
row 12345
row 23456
average

/* table.c */
#include

main()
{
int data[4][5];
int i, j, sum;

puts("Input data");
for (i = 0; i < 3; i++) {
for (j = 0; j < 4; j++) {
printf("%d %d > ", i, j);
fscanf(stdin, "%d", &data[i][j]);
}
putchar('\n');
}

for (i = 0; i < 3; i++) {
sum = 0;
for (j = 0; j < 4; j++)
sum += data[i][j];
data[i][4] = sum;
}

for (j = 0; j < 4; j++) {
sum = 0;
for (i = 0; i < 3; i++)
sum += data[i][j];
data[3][j] = sum / 3;
}
data[3][4] = 0;

puts("total and average");
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++)
printf("%4d ", data[i][j]);
putchar('\n');
}
}

*1:p131