1、算数运算符:+:加、-:减、*:乘、/:除、%:取余
(1)加减乘和数学中一样,除不一样。
(2)当“/”2边都是整数的时候,得到的结果也是整数;当“/”2边有浮点数时,得到的结果也是浮点数
(3)取余结果的正负性只取决于左边的操作数
(4)浮点数不能做取余运算
2、复合运算符
+=:在原来的值的基础上加一个值 例 a += b <-> a = a+b,下同
-=:在原来的值的基础上减一个值
*=:在原来的值的基础上乘一个值
/=:在原来的值的基础上除一个值
%=:在原来的值的基础上取余一个值
++:在原来的基础上加1
—:在原来的机床上减1
前缀(++i)和后缀(i++)的区别:前缀是先自增或自减再运算,后缀是先运算再自增或自减
3、逗号运算符:(表达式1,表达式2,表达式3......表达式n);
作用:会从表达式1一直执行到表达式n,表达式的结果会以最后一个表达式的结果为最终结果
4、关系运算符:>、<、=、>=、<=、!=、==
(1)程序中的==才相当于数学中的=,程序中的=是赋值
(2)数学中表示结论,而程序中表示判断
(3)关系运算式肯定有一个结果,要么是对(用1表示),要么是错(用0表示)
例 1>3 结果是 0 1<3结果是 1
5、逻辑运算符:&&:逻辑与 ||:逻辑或 !逻辑非
(1)&&逻辑与,读作并且,当左右2边均满足时结果为真。一假则假,全真才真
(2)||逻辑或,读作或者,当左右有一个满足结果为真,否则为假。一真则真,全假才假
(3)!逻辑非,读作取反。真则假,假则真
(4)C语言中用0表示假,非0表示真
(5)断路问题
逻辑与中一假则假,如果第一个条件为假,那么右边的表达式不会被执行
逻辑或中一真则真,如果第一个条件为真,那么右边的表达式不会被执行
6、优先级:逻辑运算符<关系运算符<算数运算符
7、sizeof运算符:sizeof(类型) 作用:计算出类型所占用的字节数,结果是unsigned long类型
注意:如果传入的是char类型的常量,计算出来的结果是4;如果传入的是char类型或者char类型的变量,计算出来的结果是1。因为char类型的常量在内存中当作int类型来存储的
8、三目运算符:表达式1?表达式2:表达式3
作用:执行表达式1,如果为真,则运行表达式2,否则运行表达式3
(1)三目运算符可以和if-else相互转换
(2)判断条件后的语句比较少的时候用三目运算符,如果语句多的推荐用if-else