文字のグリッドを作成しようとしています。この例では、3x3 グリッドを使用しています。文字の別の 1 次元配列から割り当てるために 2 つの for ループを使用していますが、各行の最終値は常に次の最初の値と同じですが、その理由がわかりません。行と列の計算に何か問題がありますか?
char text[8] = "abcdefghi";
char grid[2][2];
int i,j;
for(i=0; i<=8; i++)
{
char c = text[i];
int row = i/3;
int col = i%3;
printf("%c row=%d col=%d i=%d\n", c, row, col, i);
grid[row][col] = c;
}
printf("------\n");
for(i=0; i<3; i++)
{
for(j=0; j<3; j++)
{
printf("%c row=%d col=%d \n", grid[i][j], i, j);
}
}