一、概念
// 三目运算符格式 : 表达式? 结果A : 结果B
// 结合性 : 从左至右
// 只要条件表达式 为真 就返回结果A, 如果条件表达式为假, 那么就返回结果B
// 【int result = (a > b) ? a : b;】 a 大于 b 吗? 如果 a 大于 b 就返回 a, 否则返回b
// 三目运算符的优先级 : 低于关系运算符 和 算术运算符
/*
// 1.阅读性比较差
// 2.性能也比较差
int result = (num1 > num2 ? num1 : num2) > num3 ? (num1 > num2 ? num1 : num2) : num3; // 计算了两次 (num1 > num2 ? num1 : num2)
*/
二、代码
#include <stdio.h>
int main()
{
/*
int a = 20;
int b = 15;
// int result = a > b;
// int result = (a > b) ? a : b;
// 25 > 15 ? 20 : 15
int result = a + 5 > b ? a : b;
printf("result = %i\n",result);
*/
// 从键盘输入3个整数, 利用三目运算符取出最大值并输出
// 1.提示用户输出三个整数, 用逗号隔开, 以回车结束
printf("请输如三个整数, 用逗号隔开, 以回车结束\n");
// 2.定义三个变量保存用户输入的数据
int num1 , num2, num3; // 22,12,33
// 3.利用scanf函数接收用户输入的数据
scanf("%i,%i,%i",&num1,&num2,&num3);
// 4.比较是三个数的大小, 取出最大值
// 4.1 获取num1 和 num2中的最大值
int temp = num1 > num2 ? num1 : num2;
// 4.2 利用num1 和 num2 中的最大值 和剩下的num3比较
int result = temp > num3 ? temp : num3;
// youtube写法 usb写法
/*
*/
// 5.输出结果
printf("result = %i\n",result);
return 0;
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。