c语言表达式的顺序怎样?

如题所述

根据从左到右计算顺序,结合运算符优先级,根据定义

a = 3, b = 4, c = 5,假定 a,b,c 为 int。真值为1,假值为0。
计算步骤如下:
1、计算 a + b,结果为 a + b = 7
2、计算 !( a + b) 结果为 0,也可以认为是false(假)。
3、计算 c/2,假定c为int时,结果为 2(取整),为float或者double时为2.5,但不影响最终结果,因为都是真值(非零值)。
4、计算 0 + c,结果为 5
5、计算 5 -1,结果为 4。
6、计算 b + 2 或者 b + 2.5,结果为 6 或者 6.5。

7、计算 4 && 6 后者 4 && 6.5,因为两边都为非零值,所以结果为 1,或者true。
这里主要是一个运算符优先级的问题,在本表达多中。

小括号的优先级最高,所以最先计算括号内的值。
其次是逻辑非,然后是除法,然后是 加减法,最终是 逻辑与。
温馨提示:内容为网友见解,仅供参考
无其他回答

C语言运算符的优先级
1、C语言中,运算符的运算优先级共分为15级。1级最高,15级最低。在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符优先级相同时,则按运算符的结合性所规定的结合方向处理。2、c语言运算符优先级从高到低的顺序依次如下:优先级从上到下依次递减,最上面具有最高...

c语言中,计算的顺序是从哪向哪?
在C语言中,表达式的计算顺序是由运算符的优先级和结合性决定的。以下是C语言中一些常用运算符的优先级(从高到低):后缀运算符:++、-- 一元运算符:++、--、+、-、*、\/、%、&、|、^、~、!乘性运算符:*、\/ 加性运算符:+、- 移位运算符:<<、>> 关系运算符:<、>、<=、>= 相等...

C语言优先级顺序是什么样的啊?
C语言运算符优先级顺序如下所示:自增运算符 ++ 和自减运算符 --,在作后缀运算符(如表达式 x++)时,较其用作前缀运算符(如表达式 ++x)时,具有较高的优先级。+、-、* 和 & 运算符记号不但可以当作一元运算符(unary operator,只需要一个操作数),也可以当作二元运算符(binary operator,...

c语言表达式的顺序怎样?
根据从左到右计算顺序,结合运算符优先级,根据定义 a = 3, b = 4, c = 5,假定 a,b,c 为 int。真值为1,假值为0。计算步骤如下:1、计算 a + b,结果为 a + b = 7 2、计算 !( a + b) 结果为 0,也可以认为是false(假)。3、计算 c\/2,假定c为int时,结果为 2(...

c语言运算符优先级顺序表
C语言中,运算符的优先级可以分为不同级别,具体优先级顺序如下:最高优先级:单目运算符(如取反、乘方等)、赋值运算符(=、+=、-=、*=等)、逻辑非运算符(!)、关系运算符(<、<=、>、>=等)、相等运算符(==、!=等)、按位与运算符(&)、按位异或运算符(^)、按位或运算符(|...

运算符优先级由高到低的顺序是什么?
c语言运算符优先级从高到低的顺序依次如下:优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。优先级与求值顺序无关。如a+b && b...

C语言运算符的优先级是如何规定的?
C语言中,运算符除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符。运算符的运算优先级共分为15 级,1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定...

请告诉我:C语言中运算的优先级先后顺序
运算符的优先级中同级别的不分先后顺序,但是需要注意,表达式本身的运算顺序,如果表达式本身是从左向右算的,如逗号表达式,那么即使同级别的,那也得按照先左后右的顺序,比如=表达式,是从右向左算的,那就得按照先右后左的顺序

C语言的运算符的优先级是什么?
也称为条件运算符号,是C语言中唯一的一个三目运算符,结合顺序是从右往左。9、第九级:=、+=、-+、*=、\/=、%= 这些运算符也叫做赋值运算符,除此之外,>>=、<<=、&=、^=、|=这些赋值运算符也在这一级别内,结合顺序是从右往左。10、最低级:,逗号运算符也称为顺序求值运算...

c语言的表达式优先级比较。
3级优先级(左结合) *乘法运算符;\/除法运算符;%取余运算符。4级优先级(左结合) +加法运算符;-减法运算符。5级优先级(左结合) <<左移运算符;>>右移运算符。6级优先级(左结合) <、<=、>、>=关系运算符。7级优先级(左结合) ==等于运算符;!=不等于运算符。8...

相似回答
大家正在搜