使用C++中指针实现输入三个正整数按由小到大顺序输出的代码,调用swap函数来实现
时间: 2024-12-10 09:44:36 浏览: 23
在C++中,你可以通过定义三个指向整数的指针,并利用`cin`获取用户输入,然后使用`swap`函数交换元素,最后遍历并输出排序后的结果。下面是一个简单的示例代码:
```cpp
#include <iostream>
#include <algorithm> // 需要用到swap函数,所以在头文件里包含
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int num1, num2, num3; // 定义三个整数变量
int* ptr1 = &num1, *ptr2 = &num2, *ptr3 = &num3; // 创建三个指向整数的指针
std::cout << "请输入三个正整数:" << std::endl;
std::cin >> *ptr1 >> *ptr2 >> *ptr3;
// 判断是否需要交换,这里采用冒泡排序的思想
if (*ptr1 > *ptr2) {
swap(ptr1, ptr2);
}
if (*ptr2 > *ptr3) {
swap(ptr2, ptr3);
}
if (*ptr1 > *ptr2) {
swap(ptr1, ptr2);
}
std::cout << "按照从小到大的顺序输出:";
std::cout << *ptr1 << ", " << *ptr2 << ", " << *ptr3 << std::endl;
return 0;
}
```
在这个例子中,我们首先获取用户输入,然后比较每个相邻的两个数,如果它们的顺序错误就调用`swap`函数进行交换。最后输出排序好的数字。
阅读全文