运用条件运算符比较数的大小

1.格式:

        条件表达式?表达式1:表达式2

对条件表达式进行判断。若是表达式为真,则执行表达式1;若是表达式为假,则执行表达式2.

2.题目:

【20分】B. 三数论大小(指针)

时间限制1s

内存限制128MB

题目描述

输入三个整数,然后按照从大到小的顺序输出数值。

要求:用三个指针分别指向这三个整数,排序过程必须通过这三个指针来操作,不能直接访问这三个整数

输出时,必须使用这三个指针,不能使用存储三个整数的变量

输入

第一行输入t表示有t个测试实例

第二行起,每行输入三个整数

输入t行

输出

每行按照从大到小的顺序输出每个实例

样例输入:3 
2 4 6
88 99 77
111 333 222

样例输出:6 4 2
99 88 77
333 222 111

3.代码如下:

#include <iostream>
using namespace std;

int main() {
	int i = 0, t = 0;
	cin >> t;
	int a, b, c, MAX, MIN, MID = 0;
	int *A = &a, *B = &b, *C = &c;
	for (i = 0; i < t; i++) {
		cin >> a >> b >> c;
		MAX = *A > *B ? (*A > *C ? *A : *C) : (*B > *C ? *B : *C);
		MID = MAX == *A ? (*B > *C ? *B : *C) : MAX == *B ? (*A > *C ? *A : *C) : MAX == *C ? (*B > *A ? *B : *A) : 0;
		MIN = *A < *B ? (*A < *C ? *A : *C) : (*B < *C ? *B : *C);
		cout << "排列后从大到小为:" << MAX << " " << MID << " " << MIN << endl;
	}
	return 0;
}

可以通过嵌套多个条件运算表达式,比较这三个数的大小。

4.结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值