本关任务:题目中已经定义3个整型变量及3个整型指针变量,完成程序功能,仅用指针方法读入三个整数,并实现按由小到大的顺序进行排序,最后输出排序结果
时间: 2024-02-18 20:05:41 浏览: 69
好的,我理解了你的要求。以下是对应的代码实现:
```c++
#include <iostream>
using namespace std;
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
void sort(int* array[], int len) {
for (int i = 0; i < len - 1; i++) {
for (int j = i + 1; j < len; j++) {
if (*array[i] > *array[j]) {
swap(array[i], array[j]);
}
}
}
}
int main() {
int a, b, c;
int* pa = &a;
int* pb = &b;
int* pc = &c;
cin >> *pa >> *pb >> *pc;
int* array[] = { pa, pb, pc };
sort(array, 3);
cout << *array[0] << " " << *array[1] << " " << *array[2] << endl;
return 0;
}
```
程序中定义了三个整型变量 `a`、`b`、`c`,以及对应的三个整型指针变量 `pa`、`pb`、`pc`。在 `main` 函数中,通过读入指针变量的方式,把输入的三个整数分别存储到变量 `a`、`b`、`c` 中。
接着,将指向这三个变量的指针存储到一个指针数组 `array` 中,并调用 `sort` 函数进行排序。排序完成后,将排序后的三个指针分别指向的值输出即可。
`sort` 函数使用简单的冒泡排序算法实现,通过比较指针所指向的值大小,来交换指针在数组中的位置。
阅读全文