如题所述
在C语言中,? : 是条件运算符。它用于将一个表达式与另一个表达式比较,并返回其中一个表达式的值。其语法形式如下:
condition ? value_if_true : value_if_false
在这个表达式中,condition是一个布尔表达式,它会被评估为true或false。如果是true,则返回value_if_true;如果是false,则返回value_if_false。
例如,以下代码使用条件运算符求两个数的较大值:
在这个例子中,条件表达式a > b的值是true,因此max的值为a。
♡♡ 有帮助到的话,麻烦采纳哦!♡♡
C语言中?:的用法类似于if和else,它是一个条件运算符。
格式是表达式1?表达式2:表达式3。
含义是:如果表达式1成立(值为真),则表达式2是整个条件表达式的值;如果表达式1不成立(值为假),则表达式3是整个条件表达式的值。
常用的格式
如:min=(c<d)?c:d;
该语句的含义如上图所示:如果c<d成立,那么min=c,如果c<d不成立,那么min=d。
实例:
计算两个数的和,然后用这个和与另一个数比较,输出最小的数。
#include <stdio.h>
int main(){
int a, b,c,d=100;
printf("Input two numbers:");
scanf("%d %d", &a, &b);
c=a+b;
printf("min=%d\n", c<d?c:d);
return 0;}
运行结果(根据输入的不同,结果有差异,下面列举2种):
(1)第一种情况:Input two numbers:45 60
min=100
(2)第二种情况:Input two numbers:32 55
min=87