C语言~A/B/C,它是算术运算是怎么样的?

如题所述

1级优先级 左结合
() 圆括号
[] 下标运算符
-> 指向结构体成员运算符
. 结构体成员运算符
2级优先级 右结合
! 逻辑非运算符
~ 按位取反运算符
++ 前缀增量运算符
-- 前缀增量运算符
+ 正号运算符
- 负号运算符
(类型) 类型转换运算符
* 指针运算符
& 地址与运算符
sizeof 长度运算符
3级优先级 左结合
* 乘法运算符
/ 除法运算符
% 取余运算符
4级优先级 左结合
+ 加法运算符
- 减法运算符
5级优先级 左结合
<< 左移运算符
>> 右移运算符
6级优先级 左结合
<、<=、>、>= 关系运算符
7级优先级 左结合
== 等于运算符
!= 不等于运算符
8级优先级 左结合
& 按位与运算符
9级优先级 左结合
^ 按位异或运算符
10级优先级 左结合
| 按位或运算符
11级优先级 左结合
&& 逻辑与运算符
12级优先级 左结合
|| 逻辑或运算符
13级优先级 右结合
? : 条件运算符
14级优先级 右结合
= += -= *= /= %= &= ^= |= <<= >>= 全为赋值运算符
15级优先级 左结合
, 逗号运算符
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。
所有的优先级中,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。其它的都是从左至右结合。
具有最高优先级的其实并不算是真正的运算符,它们算是一类特殊的操作。()是与函数相关,[]与数组相关,而->及.是取结构成员。
其次是单目运算符,所有的单目运算符具有相同的优先级,因此在我认为的 真正的运算符中它们具有最高的优先级,又由于它们都是从右至左结合的,因此*p++与*(p++)等效是毫无疑问的。
另外在C语言里 没有前置后置之分 因为++ -- 是右结合所以 右侧优先运算 表现为 "后置优先级比较高" 的假象 前置和后置的区分是因为运算符重载而后加入C++的
接下来是算术运算符,*、/、%的优先级当然比+、-高了。
移位运算符紧随其后。
其次的关系运算符中,< <= > >=要比 == !=高一个级别,不大好理解。
所有的逻辑操作符都具有不同的优先级(单目运算符出外,!和~)
逻辑位操作符的"与"比"或"高,而"异或"则在它们之间。
跟在其后的&&比||高。
接下来的是条件运算符,赋值运算符及逗号运算符。
在C语言中,只有4个运算符规定了运算方向,它们是&&、| |、条件运算符及赋值运算符。
&&、| |都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值时,就不再计算右边表达式的值。如 a = 0 && b; &&运算符的左边位0,则右边表达式b就不再判断。
在条件运算符中。如a?b:c;先判断a的值,再根据a的值对b或c之中的一个进行求值。
赋值表达式则规定先对右边的表达式求值,因此使 a = b = c = 6;成为可能。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-23
相当于A/(B*C)。。。

C语言~A\/B\/C,它是算术运算是怎么样的?
在C语言中,只有4个运算符规定了运算方向,它们是&&、| |、条件运算符及赋值运算符。&&、| |都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值时,就不再计算右边表达式的值。如 a = 0 && b; &&运算符的左边位0,则右边表达式b就不再判断。在条件运算符中。如a?b:c;先判断...

C语言中,有哪些算术运算符?
在C语言中,算术运算符扮演着基础的角色,它们用于执行基本的数学运算。以下是一些常见的算术运算符及其在代码中的应用实例:C语言中的算术运算符包括加法(+),减法(-),乘法(*),除法(\/)和取模(%)。例如:include <stdio.h> int main(){ int a = 21, b = 10;int c;c = a + ...

c语言中运算符的优先级是如何排列的?
第一级:圆括号【()】、下标运算符【[]】、分量运算符的指向结构体成员运算符【->】、结构体成员运算符【.】。第二级:逻辑非运算符【!】、按位取反运算符【~】、自增自减运算符【++ --】、负号运算符【-】、类型转换运算符【(类型)】、指针运算符和取地址运算符【*和&】、长度运算符【...

运算符C语言中的运算符
C语言将大部分基础操作,除了控制流程和输入输出,都视为运算符来处理,这体现了它运算符使用范围的广泛性,例如,等于号“=”就是作为赋值运算符,而方括号则代表下标操作。C语言的运算符主要分为以下几类:算术运算符:包括乘法(*)、减法(-)、加法(+)和除法(\/)。关系运算符:如大于(>)、小于(=...

C语言运算符
算术运算符 包括 `+`(加)、`-`(减)、`*`(乘)、`\/`(除)、`%`(取余)。注意乘法运算符 `*` 不能省略。除法和取余的运算对象必须是整数。移位运算符 `>>`(右移)和 `<> 1` 表示将 `a` 的值右移一位。关系运算符 包括 `>`(大于)、`>=`(大于等于)、`<`(小于)...

C语言基础--运算符
在C语言基础中,运算符是编程中的重要组成部分。首先,我们来了解算术运算符,如加(+)、减(-)、乘(*)、除(\/)和求余(%)。例如,表达式a+b表示两个数的相加,a-b表示减法,a*b代表乘法,a\/b则用于除法,而a%b则用于求取a除以b的余数。在处理整数除法时,要注意四舍五入的特性,...

表达式的求值(c语言)
c语言有丰富的表达式,这是它的特点之一,表达式主要有4类,算术表达式,赋值表达式,逗号表达式,关系表达式 1.算术表达式就是包含算术运算符(如+ - \/ * %等)的表达式(不是语句,后面没有分号),如:a+b ,a%b,a+b-c*d,3+5等,算术表达式的值就是最后算出的结果,如3+5这个表达式的...

C语言中什么是算术运算
C语言的运算符可分为以下几类:1. 算术运算符:用于各类数值运算。包括加(+)、减(-)、乘(*)、除(\/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。2. 关系运算符:用于比较运算。包括大于(>)、小于()、大于等于(>=)、小于等于(<=)和不等于(!=)六种。3. 逻辑运算符...

c语言运算符优先级顺序
C语言运算符优先级,从高到低依次如下:优先级速记:算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符。逻辑运算符中“逻辑非 !”除外。如果不记得优先级了,使用()来确定执行顺序。有()先算()里面的。

C语言中大小写字母转换的算法是怎么样的
这个程序的算法思想就是ASCII码的转化,ASCII代码中一个字母的小写字母比他相应的大写字母的ASCII码大32,c语言允许字符数据与整数直接进行算术运算 main(){char c1,c2;c1='a';c2='b';c1=c1-32;c2=c2-32;printf("%c,%c",c1,c2);} ...

相似回答