上次课内容:常量和变量
( 1)、直接常量(常量或字面常量):给定不变的,可
从字面识别的量。
如,3.14,10,‘a’
( 2)、符号常量(非字面常量):用名字代表的,不能
从字面识别的量。
P22_例 2.5
( 1),变量的声明
引用变量之前,必须声明变量的类型,编译时就会根据指定类型分
配一定的存储空间,并决定数据的存储方式和允许操作方式。灵如
如,int a,b;
int c=10,d=20;
在变量声明中赋值称初始化
( 2)、标识符
标识符是给程序中的实体 ——变量、常量、函数、数组、结构体
以及文凭所起的名字。
本次课主要内容:运算符与表达式
? 算术运算
1、双元运算
2、自反算术赋值运算符
3、自加和自减运算
4、正负号运算符
5、赋值类运算符的副作用
? 关系、逻辑与条件运算
1、关系运算
2、逻辑运算
3、条件运算
教学目的
1,了解算术运算与表达式的概念
2,掌握各种运算的运算符,表达式格式
、运算级、结合方向。
3、运算级、结合方向及副作用。
概述
运算 是对数据的加工。最基本的运算形式
常常可以用一些简洁的符号记述。这些符号称
为运算符或操作符。被运算的对象 ——数据,
也称操作数。表达式描述了对哪些数据,以何
顺序、施何操作。它由运算符和运算量组成。
运算量可以是常量,也可以是变量,还可以是
函数 。
一、算术运算
1、双元算术运算
一个算术运算符需两个运算量的运算。
P30_表 2.5
运算级别,*,/,%(同级) —— +,–(同级)
结合方向:自左向右
如,3*5-5*2
2、自反算术赋值运算符
–=,*=,+=,/=,%=
如,a+=b 等价于 a=a+b
a*=b 等价于 a=a*b
自反算术赋值运算符是算术算符与赋值算符的合成。
结合方向:自左向右
一、算术运算
3、自加和自减运算
i++ i– – 先引用后增值
++ i – –i 先增值后引用
结合方向:自右向左
如:当 i =5时
i ++ i值为 6
如:当 i =5时
++ i i 值为 6
如:当 i =5时
j= i ++ j 值为 5,i值为 6
4、正负号运算符
级别,+(正号),–( 负号)高于 *,/,
二、关系、逻辑与条件运算
1、关系运算
运算符,>,>=,<=,= =,!=。
级别,>,>=,<= —— = =,!=
结合方向:自左向右
关系运算符低于算术运算符,高于赋值运算符( =)。
值,
关系成立:为“真” 1。
关系不成立:为“假” 0。
如,
int x=2,y=3,Z;
z=3-1>=x+1<=y+2;
注意,P43
1、区间表示问题
2、连续关系表示
3、关系表达式可看作是整型表达式
4、字符比较按 ASSCII值进行
5、浮点数判定由于存储上的误差,会得出错误的结果。
2,逻辑运算
运算符,&&(与),||(或)、!(非)
说明,
( 1) &&和 ||是二元运算,结合方向为自左向右,且优先级低于
关系运算;
!是一元运算,结合方向为自右向左;优先级高于关系运算;
( 2)非零为, 真,, 0为, 假, 。
如:! 3>1 结果为 0,,假, 值。
真值表见 P_335表面 2.6
3、条件运算
一般形式,e1? e2,e3
若 e1为真,值为 e2,否则为 e3,
如,max=a>b? a,b;
例 p_36
例 P_37
小结
? 算术运算和关系、逻辑、条件运算
? 注意算术运算、关系、逻辑和条件运算
的值,运算级。
? 练习 p52~54