从键盘中输入10个整型数据,输出每个数据按顺序向后移动3位的结果。 编码要求:请自行实现move (int *arry, int n, int m)函数,并在main()中调用move()来完成对数据的移动。C++
时间: 2024-03-06 20:49:31 浏览: 66
好的,下面是代码实现:
```c++
#include <iostream>
using namespace std;
void move(int* arry, int n, int m) {
int temp[m];
for (int i = 0; i < m; i++) {
temp[i] = arry[i];
}
for (int i = 0; i < n - m; i++) {
arry[i] = arry[i + m];
}
for (int i = n - m, j = 0; i < n; i++, j++) {
arry[i] = temp[j];
}
}
int main() {
int nums[10]; // 存放输入的10个整数
cout << "请输入10个整数:" << endl;
for (int i = 0; i < 10; i++) {
cin >> nums[i]; // 从键盘中读入数据
}
move(nums, 10, 3);
cout << "移动后的结果:" << endl;
for (int i = 0; i < 10; i++) {
cout << nums[i] << " "; // 输出每个数据按顺序向后移动3位的结果
}
cout << endl;
return 0;
}
```
其中,`move`函数用于实现数据的移动,接受三个参数,分别为:要移动的数组、数组的长度和移动的位数。函数中首先将前m个元素复制到临时数组中,然后将数组中的元素向前移动m位,最后将临时数组中的元素复制到数组的末尾。
在`main`函数中,先输入10个整数,然后调用`move`函数将数组中所有元素向后移动3位,最后输出每个数据按顺序向后移动3位的结果。
阅读全文