C语言3、 有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数,写一函数实现以上功能,在主函数中输入n个整数和输出调整后的n个数。
时间: 2023-12-20 16:50:03 浏览: 59
```c
#include <stdio.h>
void move(int arr[], int n, int m); // 声明函数
int main() {
int n, m, i;
printf("请输入n和m:");
scanf("%d%d", &n, &m);
int arr[n];
printf("请输入%d个整数:", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
move(arr, n, m); // 调用函数
printf("移动后的%d个整数为:", n);
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
void move(int arr[], int n, int m) {
int i, j, temp;
for (i = 0; i < m; i++) { // 移动m个数
temp = arr[n - 1]; // 取出最后一个数
for (j = n - 1; j > 0; j--) { // 后面的数向后移动
arr[j] = arr[j - 1];
}
arr[0] = temp; // 把最后一个数放在最前面
}
}
```
阅读全文