三目运算符
/**
// 三目运算符格式: 条件表达式 ? 结果A : 结果B
// 结合性 : 从左至右
// 只要条件表达式为真就返回结果A,如果条件表达式为假返回结果B
*/
#include <stdio.h>
int main()
{
/*
int a = 20;
int b = 15;
// int result = a > b;
// 三目运算符格式: 条件表达式 ? 结果A : 结果B
// 结合性 : 从左至右
// 只要条件表达式为真就返回结果A,如果条件表达式为假返回结果B
// a 大于 b 吗? 如果 a大于b 就返回a, 否则返回b
// int result = (a > b) ? a : b;
// 三目运算符的优先级 : 低于关系运算符和算术运算符
// 20 > 15 ? 20 : 15
int result = a + 5 > b ? a : b;
printf("result = %i\n",result);
*/
// 从键盘输入3个整数, 利用三目运算符取出最大值并输出
// 1. 提示用户输入三个整数,用逗号隔开,以回车结束
printf("请输入三个整数,用逗号隔开,以回车结束\n");
// 2. 定义三个变量保存用户输入的数据
int num1, num2, num3;
// 3.利用scanf 函数接受用户输入的数据
scanf("%i,%i,%i",&num1,&num2,&num3); // 12 13 11
// 4.比较三个数的大小,取出最大值
// 4.1 获取num1和num2中的最大值
// int temp = num1 > num2 ? num1 : num2; // 12 > 13? 13 : 12; temp = 13
// // 4.2 利用num1和num2中的最大值和 剩下的num3比较
// int result = temp > num3 ? temp : num3; // 13 > 11? 13 : 11; result = 13
// youtube 写法 usb写法
// 1.阅读性比较差
// 2.性能也比较差
int result = (num1 > num2 ? num1 : num2) > num3 ? (num1 > num2 ? num1 : num2) : num3;
// 5.输出结果
printf("result = %i\n",result);
return 0;
}