用C++编写:使用指针输入10个整数,将其中最小的数与第1个数对换,把最大的数与最后一个数对换。编写3个子函数:(1)输入10个数;(2)进行处理;(3)输出10个数。
时间: 2023-12-04 19:08:13 浏览: 76
以下是用C++编写的程序:
```cpp
#include <iostream>
using namespace std;
void input(int* arr)
{
cout << "请输入10个整数:" << endl;
for (int i = 0; i < 10; i++)
{
cin >> *(arr + i);
}
}
void process(int* arr)
{
int min = *arr, max = *arr;
int* min_ptr = arr, * max_ptr = arr;
for (int i = 0; i < 10; i++)
{
if (*(arr + i) < min)
{
min = *(arr + i);
min_ptr = arr + i;
}
if (*(arr + i) > max)
{
max = *(arr + i);
max_ptr = arr + i;
}
}
// 将最小值与第一个数对换
int temp = *min_ptr;
*min_ptr = *arr;
*arr = temp;
// 将最大值与最后一个数对换
temp = *max_ptr;
*max_ptr = *(arr + 9);
*(arr + 9) = 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;
}
```
程序首先调用 `input` 函数输入10个整数,然后调用 `process` 函数进行处理,最后调用 `output` 函数输出结果。其中, `input` 和 `output` 函数比较简单,主要是通过指针遍历数组进行输入和输出。 `process` 函数则需要找出最小值和最大值,并且交换值,这里采用了指针来实现。
阅读全文