用C++写一个三个数最大的保留,两个小的交换数
时间: 2024-06-04 16:11:00 浏览: 40
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int a, b, c;
printf("请输入三个整数:");
scanf("%d%d%d", &a, &b, &c);
if (a < b) {
swap(&a, &b);
}
if (a < c) {
swap(&a, &c);
}
printf("最大的数是:%d\n", a);
if (b > c) {
swap(&b, &c);
}
printf("排序后的两个小数是:%d %d\n", b, c);
return 0;
}
相关问题
用c++写交换三个数
在C++中,交换三个数可以通过多种方法实现,其中一种常见的方法是使用临时变量。以下是一个简单的示例代码,展示了如何使用临时变量来交换三个数的值:
```cpp
#include <iostream>
void swap(int &a, int &b, int &c) {
int temp1 = a;
a = b;
b = temp1;
int temp2 = c;
c = a;
a = temp2;
}
int main() {
int x = 1, y = 2, z = 3;
std::cout << "交换前: x=" << x << ", y=" << y << ", z=" << z << std::endl;
swap(x, y, z);
std::cout << "交换后: x=" << x << ", y=" << y << ", z=" << z << std::endl;
return 0;
}
```
这段代码定义了一个`swap`函数,它接受三个整数引用作为参数,并通过两次交换操作实现三个数的循环交换。第一次交换将`x`和`y`的值交换,第二次交换将交换后的`x`(原始的`y`)与`z`的值交换,从而实现了三个数的顺序轮转。在`main`函数中,我们定义了三个变量`x`、`y`、`z`并输出了它们交换前后的值。
c++比较三个数大小并按大到小输出
可以使用冒泡排序的思想,先比较两个数的大小,将较大的数放在前面,再用同样的方法比较另外两个数,最后得到三个数的大小关系,按大到小输出即可。
以下是一种可能的实现方式:
```c++
#include <iostream>
using namespace std;
int main() {
int a, b, c, temp;
cout << "请输入三个整数:";
cin >> a >> b >> c;
// 比较a和b
if (a < b) {
temp = a;
a = b;
b = temp;
}
// 比较a和c
if (a < c) {
temp = a;
a = c;
c = temp;
}
// 再比较b和c
if (b < c) {
temp = b;
b = c;
c = temp;
}
// 输出结果
cout << a << " " << b << " " << c << endl;
return 0;
}
```
注意,上述代码中使用了一个temp变量来交换两个数的值,也可以使用C++11中新增的std::swap函数来实现交换。
阅读全文