使用c++.输入10个整数,将其中最小的数与第1个数对换,把最大的数与最后一个数对换。编写3个子函数:(1)输入10个数;(2)进行处理;(3)输出10个数。使用指针
时间: 2023-12-04 12:08:16 浏览: 61
以下是实现该功能的代码,其中函数的参数都是指针类型:
```c++
#include <iostream>
using namespace std;
void input(int* arr);
void process(int* arr);
void output(int* arr);
int main() {
int arr[10];
input(arr);
process(arr);
output(arr);
return 0;
}
void input(int* arr) {
cout << "请输入10个整数:" << endl;
for (int i = 0; i < 10; i++) {
cin >> *(arr + i);
}
}
void process(int* arr) {
int* min = arr;
int* max = arr;
for (int i = 0; i < 10; i++) {
if (*(arr + i) < *min) {
min = arr + i;
}
if (*(arr + i) > *max) {
max = arr + i;
}
}
int temp = *min;
*min = *arr;
*arr = temp;
temp = *max;
*max = *(arr + 9);
*(arr + 9) = temp;
}
void output(int* arr) {
cout << "处理后的数组为:" << endl;
for (int i = 0; i < 10; i++) {
cout << *(arr + i) << " ";
}
cout << endl;
}
```
上述代码中,`input`函数用于输入10个整数,`process`函数用于处理数组,`output`函数用于输出处理后的数组。在`process`函数中,使用指针变量`min`和`max`分别记录最小值和最大值的位置,然后进行交换操作。最终输出处理后的数组。
阅读全文