输入十个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求写三个函数。1.输入十个数2.进行处理3.输出十个数用指针完成
时间: 2023-12-04 07:06:56 浏览: 24
以下是用指针完成的代码:
```c++
#include <iostream>
using namespace std;
// 输入十个数
void input(int* arr) {
cout << "请输入十个整数:" << endl;
for (int i = 0; i < 10; i++) {
cin >> *(arr + i);
}
}
// 进行处理
void process(int* arr) {
int* max_ptr = arr;
int* min_ptr = arr;
for (int i = 0; i < 10; i++) {
if (*(arr + i) > *max_ptr) {
max_ptr = arr + i;
}
if (*(arr + i) < *min_ptr) {
min_ptr = arr + i;
}
}
// 将最小的数与第一个数对换
int temp = *arr;
*arr = *min_ptr;
*min_ptr = temp;
// 将最大的数与最后一个数对换
temp = *(arr + 9);
*(arr + 9) = *max_ptr;
*max_ptr = temp;
}
// 输出十个数
void output(int* arr) {
cout << "处理后的十个数为:" << endl;
for (int i = 0; i < 10; i++) {
cout << *(arr + i) << " ";
}
cout << endl;
}
int main() {
int arr[10];
input(arr);
process(arr);
output(arr);
return 0;
}
```
输出示例:
```
请输入十个整数:
5 9 1 3 7 6 8 2 4 0
处理后的十个数为:
0 9 1 3 7 6 8 2 4 5
```