输入三个整数a.b.c.要求把最小数输入a中,把最大数输入c中,然后按从小到大的顺序输出这三个数
时间: 2023-05-20 12:02:05 浏览: 150
可以使用以下代码实现:
```
#include <iostream>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
if (a > c) {
swap(a, c);
}
if (a > b) {
swap(a, b);
}
if (b > c) {
swap(b, c);
}
cout << a << " " << b << " " << c << endl;
return 0;
}
```
这个程序会先读入三个整数a、b、c,然后使用三个if语句将它们按从小到大的顺序排序,最后输出结果。
相关问题
1.输入3个整数a,b,c,要求把最小数存入a中,把最大数存入c中,然后按从小到大的顺序输出这三个数。
可以使用以下代码实现:
```
#include <iostream>
using namespace std;
int main() {
int a, b, c;
cin >> a >> b >> c;
if (a > c) {
swap(a, c);
}
if (a > b) {
swap(a, b);
}
if (b > c) {
swap(b, c);
}
cout << a << " " << b << " " << c << endl;
return 0;
}
```
这段代码可以将输入的三个整数按从小到大的顺序输出。
输入三个整数从小到大输出
有两种方法可以将输入的三个整数从小到大输出。第一种方法是使用常规计算,通过比较大小并交换位置来实现。第二种方法是使用指针计算,通过指针操作来实现。两种方法的代码实现如下:
方法一:常规计算
```
#include <stdio.h>
int main() {
int data1;
int data2;
int data3;
int datatmp;
printf("请输入三个数:\n");
scanf("%d%d%d", &data1, &data2, &data3);
//data1和data2判断,让data1为小数
if (data1 > data2) {
datatmp = data1; data1 = data2;
data2 = datatmp;
}
//data1和data3判断,让data1为小数,这时候data1是最小数
if (data1 > data3) {
datatmp = data1;
data1 = data3;
data3 = datatmp;
}
//data2和data3判断,求出中间的数和最大数
if (data2 > data3) {
datatmp = data2; data2 = data3;
data3 = datatmp;
}
printf("%d,%d,%d\n", data1, data2, data3);
}
```
方法二:指针计算
```
#include <stdio.h>
void two(int *aq1, int *aq2) {
int temp;
temp = *aq1;
*aq1 = *aq2; *aq2 = temp;
}
void one(int *a1, int *a2, int *a3) {
if (*a1 > *a2) two(a1, a2);
if (*a1 > *a3) two(a1, a3);
if (*a2 > *a3) two(a2, a3);
}
int main() {
int a, b, c;
int *p1, *p2, *p3;
printf("请任意输入三个整数:\n");
scanf("%d%d%d", &a, &b, &c);
p1 = &a;
p2 = &b;
p3 = &c;
one(p1, p2, p3);
printf("%d %d %d", a, b, c);
}
```
阅读全文