【发布时间】:2018-08-29 05:54:08
【问题描述】:
例如,假设有宽度和高度,6 和 4 分别来自用户输入,并且存储在二维数组中的输入(也来自用户输入)是:
0 1 2 2 1 0
1 0 0 0 0 1
1 0 0 0 0 1
0 1 1 1 1 0
有什么办法可以翻转x轴和y轴吗? 我想做的是改变
0 1 2 2 1 0
1 0 0 0 0 1
1 0 0 0 0 1
0 1 1 1 1 0
进入
0 1 1 0
1 0 0 1
2 0 0 1
2 0 0 1
1 0 0 1
0 1 1 0
以下代码,
scanf("%d %d", &width, &height);
int board[height][width];
for(i = 0; i < height; i++)
{
for(j = 0; j < width; j++)
{
scanf("%d", &input);
board[i][j] = input;
}
}
通过做
for(i = 0; i < width; i++)
{
for(j = 0; j < height; j++)
{
printf("%d", board[j][i]);
}
printf("\n");
}
,这会打印出我期望的输出,但它实际上并没有改变它的位置......我不能改变第一个编码部分,因为我已经用它来做其他工作了。有没有办法通过添加其他方法或新板来解决问题?
有人可以帮帮我吗?如果有人帮助我,我将非常感激! 谢谢
【问题讨论】:
-
您必须声明第二个数组并将值从第一个数组复制到第二个数组。
标签: c loops for-loop matrix multidimensional-array