运算符和表达式
运算符:实现计算机对内存中的数据进行数据运算
运算符的种类:算术运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符、位运算符
算术运算符
自增自减运算符
自增自减运算符的限制:
要求操作数必须是变量(有存储空间)、整数
(a+b)++
—— 不能对有运算符的表达式做运算
关系运算符
关系运算符中的关系运算,也就是比较运算,用于两个表达式之间的比较。
逻辑运算符
运算符:与、或、非
运算符的结果:真或者假
计算机运算的结果:1(真)、0(假)
计算机识别真假:非零即真,零为假
- 观察如下运算结果,过程解析:先用a,也就是0在表达式中运算,当计算机运算到是0与上后面的数时,就不会再继续运算了(计算机偷懒了),因为0与上任何数都为0
- 观察如下结果,计算机也偷懒了,a先加上1,然后让a作为表达式的值,也就是1。1或上任何数都为1,计算机不再继续往下运算
条件运算符
运算符:由 ?
和 :
组成,必须一起使用。要求有三个操作对象,称为三目运算符。它的优先级为13级,结合性自右至左。
一般形式:表达式1 ? 表达式2 : 表达式3
- 例:求三个数的最大值
位运算符
位运算符的特点:使用二进制的数据进行计算
- 例1:位运算符不会改变变量(a),本身的值
- 例2:判断奇数还是偶数,解析:利用按位与,任何数与上1,主要看其第一位。
- 比如:10&1,也就是1010&0001,第一位0&1的结果为0,则1010&0001的结果为偶数
赋值运算符
运算符:赋值符号 =
就是赋值运算符,可以构成复合运算符
表达式和c语句
什么是表达式?
用运算符和括号将运算对象(也叫操作数)连接起来的、符合C语法规则的式子,称为C语言表达式。运算对象包括常量、变量、函数等。
示例:例如一个合法的表达式:a*b/c-1.5+'a'
执行规则:在求表达式时,先按运算符的优先级别顺序执行,例如先乘除再加减。在同一级别中的运算符,则需要看运算符的结合性。(同一级别的运算符结合性是一致的)
隐式转换
含义:隐式转换又称自动数据类型转换
特点:自发,小类型(字节数少)往大类型(字节数多)去做自发转换
运算规则:
- 例1
强制转换
基本格式:(类型名)(表达式)
注意:要考虑失真风险带来的后果。
- 例1:类型不匹配,结果有意外
- 正确方式
- 例2:对x做强制转换,不会改变x自身的类型,也不会改变x自身的值
C语句
(1) 控制语句
① if()…else…
② for()…
③while()…
④do…while()
⑤continue
⑥break
⑦switch
⑧return
⑨goto
(2) 函数调用语句 printf();
(3) 表达式语句 a*b/c-1.5+‘a’;
(4) 空语句 ;
(5) 复合语句 { i=3; j=4; }