c++中 实现顺时针旋转
时间: 2023-07-29 10:01:44 浏览: 217
在C语言中实现顺时针旋转可以使用二维数组或者指针来实现。下面是使用二维数组的示例代码:
```c
#include <stdio.h>
// 定义一个常量,表示数组的维度
#define N 3
// 定义函数用于顺时针旋转二维数组
void rotate(int arr[N][N]) {
// 定义一个辅助数组用于存储旋转后的结果
int temp[N][N];
// 进行顺时针旋转,将原数组的行变为列,列变为行
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
temp[j][N-1-i] = arr[i][j];
}
}
// 将旋转后的结果复制回原数组
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
arr[i][j] = temp[i][j];
}
}
}
int main() {
// 定义一个二维数组
int arr[N][N] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
// 调用旋转函数进行顺时针旋转
rotate(arr);
// 输出旋转后的结果
printf("顺时针旋转后的数组:\n");
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
运行以上代码,将会输出顺时针旋转后的数组:
```
顺时针旋转后的数组:
7 4 1
8 5 2
9 6 3
```
这就是使用C语言实现顺时针旋转的方法。
阅读全文