写程序,将一个数列实现循环右移一位。 例如: 输入数列的长度:6 输入原始数列:1 2 3 4 5 6 循环右移一位后变为:6 1 2 3 4 5 数列输入、数列输出、数列右移分别用三个子函数实现。(数列的个数由用户从键盘输入) c++
时间: 2023-10-18 15:04:13 浏览: 72
以下是实现该功能的 C++ 代码:
```c++
#include <iostream>
using namespace std;
// 数列输入函数
void input(int arr[], int len) {
cout << "请输入" << len << "个数:" << endl;
for (int i = 0; i < len; i++) {
cin >> arr[i];
}
}
// 数列输出函数
void output(int arr[], int len) {
cout << "数列为:";
for (int i = 0; i < len; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
// 数列右移函数
void shift(int arr[], int len) {
int temp = arr[len - 1]; // 存储最后一个元素
for (int i = len - 1; i > 0; i--) {
arr[i] = arr[i - 1]; // 将元素向右移动一位
}
arr[0] = temp; // 将最后一个元素移到首位
}
int main() {
int len;
cout << "请输入数列的长度:";
cin >> len;
int arr[len];
input(arr, len);
output(arr, len);
shift(arr, len);
output(arr, len);
return 0;
}
```
运行结果如下:
```
请输入数列的长度:6
请输入6个数:
1 2 3 4 5 6
数列为:1 2 3 4 5 6
数列为:6 1 2 3 4 5
```
阅读全文