用c语言完成:有n个整数,使其前面各数顺序向后移m个立置,最后m个数变成最前面m个数。
时间: 2024-06-13 10:08:52 浏览: 109
整数的循环位移.cpp
以下是用C语言实现将前面的数顺序向后移m个位置,最后的m个数变成最前面的m个数的代码:
```c
#include <stdio.h>
void move(int arr[], int n, int m) {
int *p = arr;
for (int i = 0; i < m; i++) {
arr[i] = arr[n - m + i];
}
for (int i = m; i <; i++) {
arr[i] = *(p + i - m);
}
}
int main() {
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
int n = sizeof(arr) / sizeof(int);
int m = 3;
move(arr, n, m);
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
这个程序中,我们首先声明了一个整型数组和一个指向整型的指针变量,并将指针变量指向数组的第一个元素。然后,我们使用两个循环,将前面的数向后移m个位置,并将最后的m个数赋值给最前面的m个位置。最后,我们输出移动后的数组。
阅读全文