提供一个将二维数组旋转的C函数
时间: 2023-12-22 16:05:31 浏览: 95
C语言实现二值图像旋转任意角度
4星 · 用户满意度95%
以下是一个将n x n的二维数组顺时针旋转90度的C函数:
```c
void rotate(int matrix[][n], int n) {
// 先进行矩阵转置
for (int i = 0; i < n; i++) {
for (int j = i; j < n; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
// 再进行行反转
for (int i = 0; i < n; i++) {
for (int j = 0; j < n / 2; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[i][n - 1 - j];
matrix[i][n - 1 - j] = temp;
}
}
}
```
该函数先将矩阵进行转置,然后再对每行进行反转。这样可以实现顺时针旋转90度的效果。
阅读全文