c语言等号右边有问号,C语言问号表达式

2021-01-24 16:26:27 字数 4593 阅读 5508

1楼:金色潜鸟

右边是三目运算表达式。

(b > 0.0) ? c / b : 0.0意思是 如果 b>0.0 成立(为真),则表达式的值等于 c / b。

如果 b>0.0 不成立(为假),则表达式的值等于 0.0。

根据 b>0.0 是否成立,a 得到 c / b, 或者 0.0。

也就是 if (b>0.0) a=c/b; else a=0.0;

c语言里面?问号什么意思?:什么意思?

2楼:枫玺

c语言里面?、:是三木运算符,其中?用来判断条件的真假,:用来根据判断结果决定取值。

如(a是一个"条件表达式",如果a条件表达式的一般形式为:表达式1?表达式2:表达式3

扩展资料

关于三目运算符的说明:

1、通常情况下,表达式1是关系表达式或逻辑表达式,用于描述条件表达式中的条件,表达式2和表达式3可以是常量,变量或表达式.例如:

(x==y)?'y':'n'、(d=b*b-4*a*c)>=0?

sqrt(d):sqrt(-d)、ch=(ch>='a'&&ch<='z')?(ch+32):

ch均为合法的条件表达式。

2、条件表达式的执行顺序为:先求解表达式1,若值为非0,表示条件为真,则求解表达式2,此时表达式2的值就作为整个条件表达式的值;

若表达式1的值为0,表示条件为假,则求解表达式3,表达式3的值就是整个条件表达式的值。例如:(a>=0)?a:-a执行结果是a的绝对值。

3楼:百度用户

这是c里面唯一一个三目运算符.

a>b?a:b

如果a>b,返回a

如果a!>b,返回b

4楼:匿名用户

条件运算符 (?:) 根据布尔型表达式的值返回两个值中的一个。条件运算符的格式如下

condition ? first_expression : second_expression;

备注如果条件为 true,则计算第一表达式并以它的计算结果为准;如果为 false,则计算第二表达式并以它的计算结果为准。只计算两个表达式中的一个。

使用条件运算符,可以更简洁、雅观地表达那些否则可能要求 if-else 结构的计算。例如,为在 sin 函数的计算中避免被零除,可编写为

if(x != 0.0) s = math.sin(x)/x; else s = 1.0;

或使用条件运算符,

s = x != 0.0 ? math.sin(x)/x : 1.0;

条件运算符为右联运算符,因此该形式的表达式

a ? b : c ? d : e

按如下规则计算:

a ? b : (c ? d : e)

而不是按照下面这样计算:

(a ? b : c) ? d : e

不能重载条件运算符。

5楼:匿名用户

exp1?exp2:exp3

首先判断exp1是否成立,如成立返回exp2,否则返回exp3

6楼:匿名用户

rate=(sal<=1000) ? 0 : 0.05

这是一个语句的表示如果sal<=1000成立则rate=0,否则rate=0.05

7楼:匿名用户

你说的是 ? : 三目条件运算符吧?

8楼:匿名用户

例如flag=((2<3)?5:6);意思是如果?前的表达式为真则flag为5,否则为6,此时flag=5,而flag=((2>3)?5:6);时flag为6。

9楼:匿名用户

sfdfhjgjdhgdddvbegwgsgxbfjafxsvdgdhsgdhncuretgff

c语言问号表达式

10楼:拧发条鸟啊

……?……:……

式a?b:c值为:若a为真,则b;若a为假,则c。

但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向

尤其是当问号表达式嵌套使用时得注意这个问题,例如**:int a=1,b=2,c=3,d=4;

printf("%d",a正确结果是:1

因为先执行的是c因此得到的结果就是1(可以在编译器上实验一下)

11楼:匿名用户

a/b?b没有写完整。

编译时是不合法的句子。

我猜想是三目运算符:

条件?真值:假值

a/b?b:a

12楼:凌淩

你说的是? a:b这种吗.

max=(a>b)?a:b;

等效于if(a>b)

else

提问者评价不错

13楼:匿名用户

问号表达式的作用和if else语句相同只不过简化了语句1?语句2:语句3 等同于

if(语句1)语句2

else 语句3

14楼:变成一颗星星吧

问号表达式是这个样子的 语句a?语句b:语句c

如果满足语句a,就执行语句b;

否则执行语句c.

15楼:朴阑同映菱

楼主的意思相当于if(m!=0)else希望你能满意,有什么问题我们一起交流。

16楼:树嘉毓小蕾

其中:a表达式”;而“c=

“是赋值表达式,那么因为在c语言中,条件表达式的优先级排名13

高于赋值表达式的优先级14,因此这个语句的意思就是:当a小于b时,c=a;而当a大于或者等于b时,c=b;再翻译过来就是说这个语句执行完得到的效果就是c的值是取得a,b俩者当中较小的那个

c语言中" : "(冒号)和问号是什么意思

17楼:云南新华电脑学校

是问号和冒号一起吗

bool a = 1>3?false:true;

?: 是三元运算符由条件

运算符组成的条件表达式的一般形式为:

表达式1 ? 表达式 2 : 表达式 3

其中表达式 1、表达式2、表达式3,既可以是一个简单的表达式,又可以是由各种运算符组成的复合表达式。

计算过程很好理解:

先求表达式1的值, 如果为真, 则求表达式2 的值并把它作为整个表达式的值。 如果表达式1 的值为假, 则求表达式3 的值并把它作为整个表达式的值。

18楼:科技程序迷

是一个语句,判断一个表达式的真假来执行两条**比如int a=9,b=8;

a>b?a=8:b=9; //就是这句

相当于if语句吧,问号前面的表达式为真的时候执行a=8,否则b=9;

明白了吧。

19楼:匿名用户

这是c语言的三目运算符。

对于条件表达式b?x:y,先计算条件b,然后进行判断。

如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。一个条件表达式从不会既计算x,又计算y。

条件运算符是右结合的,也就是说,从右向左分组计算。例如,a?b:c?d:e将按a?b:(c?d:e)执行。

20楼:匿名用户

冒号的话一般都是人家说话的时候就是打个冒号,说的是什么问号的话,一般是一个语句说完了等人家提的问题就是问好。

c语言运算符中问号是什么意思

21楼:學雅思

问号是条件运算符的意思,跟冒号组合使用。条件运算符优先级高于赋值、逗号运算符,低于其他运算符。

表达式为:表达式1?表达式2:

表达式3。先求解表达式1,若其值为真(非0)则将表达式2的值作为整个表达式的取值,否则(表达式1的值为0)将表达式3的值作为整个表达式的取值。

扩展资料条件运算符具有右结合性

当一个表达式中出现多个条件运算符时,应该将位于最右边的问号与离它最近的冒号配对,并按这一原则正确区分各条件运算符的运算对象。如果在问号和冒号之间还有一个问号或者冒号,应该满足就近配对,使结构不发生紊乱。例如:

22楼:天云一号

c语言运算符中问号是条件运算符(与冒号组合)。该运算符是c语言中唯一一个三目运算符。

可以通过如下的实例来说明条件运算符的用法:

inta=1,b=3;

intmax;

max=a>b?a:b;//如果a>b,则max的值为a,否则max的值为b,也即取a与b中的较大者

23楼:匿名用户

z=x=y结果z就是y的值

跟下面的if语句等价

if(x>y)z=x;

else z=y;

24楼:匿名用户

呃,俺学艺不精,不知道你说的是哪个,是不是(?:)呢?

?:是三目运算符

如:a?b:c;

等价于:

if(a) b;

else c;

C语言中,问号表示什么意思,C语言里面?问号什么意思?:什么意思?

1楼 匿名用户 条件运算符 是c 语言中唯一的一个三目运算符。 由条件运算符组成的条件表达式的一般形式为 表达式1 表达式 2 表达式 3 其中表达式 1 表达式2 表达式3 既可以是一个简单的表达式 又可以是由各种运算符组成的复合表达式。 计算过程很好理解 先求表达式1的值 如果为真 则求表达式2...

求c语言中各种数学符号怎么表达,求C语言中各种数学符号怎么表达?

1楼 匿名用户 abs 计算整型数的绝对值 相关函数 labs fabs 表头文件 include 定义函数 int abs int j 函数说明 abs 用来计算参数j的绝对值,然后将结果返回。 返回值 返回参数j的绝对值结果。 范例 ingclude main 执行 12 12 exp 计算指数...

c语言中“或者”用什么符号表示,C语言里的“或者”是什么符号?

1楼 天枰水煮青春 c语言中,表示 或 有两种 表示按位或 。 表示逻辑或 。例如 2楼 匿名用户 或有两种,一种是逻辑或,用两竖表示 一种是按位或,用一竖表示 第一种用做逻辑运算 第二种是用做位运算的 3楼 于于祥祥 表示或者 表示与 !表示非 4楼 冰蓝n雨 逻辑运算符用于逻辑运算。包括 与 或...