用C++编写从键盘上输入一串字符,将其逆向显示。例如:输入abcdefg,则输出gfedcba。 提示:首先计算字符串的长度,再从右边逐一显示字符,直到下标等于0为止。 (3)从键盘随机输入10个数,将最大的元素与第一个元素交换,最小的元素与最后一个元素交换,最后输出交换后的所有数组元素值。 (4)从键盘随机输入10个数放入数组中,然后将其前5个元素与后5个元素对换,即:第一个元素与第十个元素互换,第二个元素与第九个元素互换,……,第五个元素与第六个元素互换。分别输出数组原来各元素的值和对换后各元素的值。 例如:从键盘随机输入10个数,依次为: 对换前:23 78 96 4 12 89 65 43 6 44 对换后:44 6 43 65 89 12 4 96 78 23
时间: 2023-12-22 16:18:51 浏览: 84
好的,以下是 C++ 代码实现:
(1)从键盘上输入一串字符,将其逆向显示。
```c++
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[100];
cout << "请输入一串字符:";
cin >> str;
int len = strlen(str);
cout << "逆向显示结果为:";
for (int i = len-1; i >= 0; i--) {
cout << str[i];
}
cout << endl;
return 0;
}
```
(2)从键盘随机输入10个数,将最大的元素与第一个元素交换,最小的元素与最后一个元素交换,最后输出交换后的所有数组元素值。
```c++
#include <iostream>
using namespace std;
int main() {
int arr[10];
cout << "请输入10个数:";
for (int i = 0; i < 10; i++) {
cin >> arr[i];
}
int max_idx = 0, min_idx = 0;
for (int i = 1; i < 10; i++) {
if (arr[i] > arr[max_idx]) {
max_idx = i; // 记录最大元素的下标
}
if (arr[i] < arr[min_idx]) {
min_idx = i; // 记录最小元素的下标
}
}
// 将最大元素与第一个元素交换
int tmp = arr[0];
arr[0] = arr[max_idx];
arr[max_idx] = tmp;
// 将最小元素与最后一个元素交换
tmp = arr[9];
arr[9] = arr[min_idx];
arr[min_idx] = tmp;
// 输出交换后的所有数组元素值
cout << "交换后的结果为:";
for (int i = 0; i < 10; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
(3)从键盘随机输入10个数放入数组中,然后将其前5个元素与后5个元素对换,分别输出数组原来各元素的值和对换后各元素的值。
```c++
#include <iostream>
using namespace std;
int main() {
int arr[10];
cout << "请输入10个数:";
for (int i = 0; i < 10; i++) {
cin >> arr[i];
}
// 输出数组原来各元素的值
cout << "对换前的结果为:";
for (int i = 0; i < 10; i++) {
cout << arr[i] << " ";
}
cout << endl;
// 将前5个元素与后5个元素对换
for (int i = 0; i < 5; i++) {
int tmp = arr[i];
arr[i] = arr[9-i];
arr[9-i] = tmp;
}
// 输出对换后各元素的值
cout << "对换后的结果为:";
for (int i = 0; i < 10; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
希望能帮到你!