C语言以运算符丰富著称
可按不同角度对运算符分类
按操作数个数
单目运算符:-a
双目运算符:a+b
三目运算符:a?b:c
按功能
算术运算符:+、-、*、++
关系运算符:>、>=、==
逻辑运算符:&&、||、! … …
表达式的相关概念
表达式就是用运算符把操作数连接起来、符合C语法规则的式子,如 a+8*b
获得表达式的运算结果的过程称为求解表达式
表达式的运算结果称为表达式的值
表达式的值的数据类型称为表达式的类型
每个表达式都有自己的值和类型
1.基本的算术运算符:
+ :加法运算符 a+b
- :减法运算符 a-b
* :乘法运算符 a*b
/ :除法运算符 a/b
% :求余运算符 a%b
+ :正号运算符(单目运算符) +a
- :负号运算符(单目运算符) -a
说明: 两个整数相除的结果为整数
*如5/3的结果值为1,舍去小数部分
*若除数或被除数中有一个为负值(如-5/3)则商可能会因系统而异。一些系统-5/3=-1,另一些系统-5/3=-2
*VC6.0采取“向零靠拢”的方法(-5/3=-1) % 运算符要求操作数必须为整数,结果也是整数。如8%3,结果为2
自增、自减运算符:++ --
用法:int i=3; ++i i++
--i i--
作用:使变量i的值增1或减1
⑴自增运算符单独使用时 ++i:先使i的值增1,再把i的值做为表达式的值 i++:先把i的值做为表达式的值,再使i的值增1
⑵在有其它运算符的场合 5*(++i):先使i的值增1,再用i的值参与其他运算 5*(i++):先用i的值参与其他运算,再使i的值增1
.不同类型数据间的混合运算:
(1)+、-、*、/ 运算中有一个操作数为float或double型,结果是double型。系统将float型数据都先转换为double型,然后进行运算。
(2) 如果int型与float或double型数据进行运算,先把int型和float型数据转换为double型,然后进行运算,结果是double型。
(3)字符型数据与整型数据进行运算,就是把字符的ASCII代码与整型数据进行运算。