C语言二维数组右转90度
时间: 2023-08-17 14:06:06 浏览: 132
c语言旋转位图90度
5星 · 资源好评率100%
将一个二维数组右转90度,可以先将其转置,然后再将每一行翻转即可。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int i, j;
// 转置矩阵
for (i = 0; i < 3; i++) {
for (j = i; j < 3; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
// 翻转每一行
for (i = 0; i < 3; i++) {
for (j = 0; j < 1.5; j++) { // 只需要翻转前半部分
int temp = matrix[i][j];
matrix[i][j] = matrix[i][2-j];
matrix[i][2-j] = temp;
}
}
// 输出矩阵
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n"); // 每输出一行后换行
}
return 0;
}
```
输出结果为:
```
7 4 1
8 5 2
9 6 3
```
注意,这里使用了一个二维数组 `matrix` 来存储矩阵,可以根据需要修改其大小和内容。
阅读全文