以下是一个用 C 语言实现循环右移函数的示例代码: ```c #include <stdio.h> // 循环右移函数 void circularRightShift(int *arr, int n, int d) { int temp[d]; for (int i = n - d, j = 0; i < n; i++, j++) { temp[j] = arr[i]; } for (int i = n - 1; i >= d; i--) { arr[i] = arr[i - d]; } for (int i = 0; i < d; i++) { arr[i] = temp[i]; } } // 打印数组函数 void printArray(int arr[], int size) { for (int i = 0; i < size; i++) { printf("%d ", arr[i]); } printf("\n"); } int main() { int arr[] = {1, 2, 3, 4, 5}; int n = sizeof(arr) / sizeof(arr[0]); int d = 2; // 要右移的位数 printf("原始数组: "); printArray(arr, n); circularRightShift(arr, n, d); printf("循环右移 %d 位后的数组: ", d); printArray(arr, n); return 0; } ``` 在上述代码中,`circularRightShift` 函数接受一个整数数组、数组长度和要右移的位数作为参数,实现了循环右移的功能。`printArray` 函数用于打印数组的元素。在 `main` 函数中,我们创建了一个测试数组,并调用相关函数进行操作和输出。 [2024-11-14 20:30:10 | AI写代码神器 | 401点数解答]