解题思路:
函数 rotate 接收三个参数:一个整数数组 arr,数组的长度 n,和要向后移动的位置数 m。函数的实现过程如下:
创建一个临时数组 temp,长度为 m,用来存储后面的 m 个元素。
将后面的 m 个元素存储到 temp 数组中。
将数组中前面的元素向后移动 m 个位置。
将 temp 数组中的元素复制到数组的前面 m 个位置。
最后,在主函数中,读取输入,调用 rotate 函数,输出结果即可。
注意事项:
参考代码:
#include void rotate(int arr[], int n, int m) { int temp[m]; for (int i = n - m, j = 0; i < n; i++, j++) { temp[j] = arr[i]; } for (int i = n - m - 1; i >= 0; i--) { arr[i + m] = arr[i]; } for (int i = 0; i < m; i++) { arr[i] = temp[i]; } } int main() { int n, m; scanf("%d", &n); int arr[n]; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } scanf("%d", &m); rotate(arr, n, m); for (int i = 0; i < n; i++) { printf("%d ", arr[i]); } return 0; }
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题6.4 (C++代码)浏览:656 |
C语言训练-尼科彻斯定理 (C++代码)浏览:641 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:722 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:710 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1033 |
奖学金 (C++代码)浏览:2008 |
九宫重排 (C++代码)浏览:2160 |
数组输出 (C语言代码)--此题的题目描述有问题浏览:1817 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:559 |
【偶数求和】 (C语言代码)浏览:646 |
22000849myx 2023-06-19 10:53:52 |
中肯的