三元运算符格式:
Exp1 ? Exp2 : Exp3;
? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个表达式的值。
示例代码:
#include<stdio.h> int main() { /*三元运算符*/ int num; printf("输入一个整数: "); scanf("%d",&num);//获取用户输入的信息 (num%2==0) ? printf("%d是偶数",num) : printf("%d是奇数",num); return 0; }
运行结果:
输入一个整数: 6 6是偶数
例子:
#include <stdio.h> int main() { int A=10; int B=20; char buy; int sum,number; printf("商品清单:\n A 商品10元/个 \n B 商品20元/个 \n"); printf("请输入要购买的商品(A 或 B):"); scanf("%c",&buy); printf("请输入购买数量:"); scanf("%d",&number); sum=((buy=='A') ? (A*number) : (B*number)) ; printf("\n购买的%d个%c商品共计%d元。\n",number,buy,sum); return 0; }
运行结果:
商品清单: A 商品10元/个 B 商品20元/个 请输入要购买的商品(A 或 B):B 请输入购买数量:2 购买的2个B商品共计40元。