第三章数据类型,运算符及表达式二.ppt
文本预览下载声明
第三章 本章要点 数据的描述规则 数据的操作规则 主要内容 §3.6变量赋初值 §3.6变量赋初值 §3.7各类数值型数据间的混合运算 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.2 常量与变量 §3.8 算术运算符和算术表达式 例3.8 强制类型转换。 #include stdio.hvoidmain() {float x; int i; x=3.6; i=(int)x; printf(x=%f, i=%d\n,x,i);} §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.8 算术运算符和算术表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 例3.9 有符号数据传送给无符号变量。 #include stdio.hvoid main() {unsigned a; int b=-1; a=b; printf(″%u\n″,a);} §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.9 赋值运算符和赋值表达式 §3.10 逗号运算符和逗号表达式 §3.10 逗号运算符和逗号表达式 §3.10 逗号运算符和逗号表达式 §3.10 逗号运算符和逗号表达式 说明:“%u”是输出无符号数时所用的格式符。如果b为正值,且在0~32767之间,则赋值后数值不变。赋值情况见图 运行结果: 65535 (3) 复合的赋值运算符 在赋值符“=”之前加上其他运算符,可以构成复 合的运算符。 例如: a+=3 等价于 a=a+3 x*=y+8 等价于 x=x*(y+8) x%=3 等价于 x=x%3 以“a+=3”为例来说明,它相当于使a进行一次自加(3)的操作。即先使a加3,再赋给a。 为便于记忆,可以这样理解: ① a += b (其中a为变量,b为表达式) ② a += b(将有下划线的“a+”移到“=”右侧) |___↑ ③ a = a + b (在“=”左侧补上变量名a) 注意:如果b是包含若干项的表达式,则相当于它有 括号。 如: ① x %= y+3 ② x %= (y+3) |__↑ ③ x = x %(y+3)(不要错写成x=x%y+3) 凡是二元(二目)运算符,都可以与赋值符一起组合成复合赋值符。 C语言规定可以使用10种复合赋值运算符: +=,-=,*=,/=,%=,=,=,&=,∧=,|= (4) 赋值表达式 由赋值运算符将一个变量和一个表达式连接 起来的式子称为“赋值表达式”。 一般形式为: 变量赋值运算符表达式 例如: “a=5”是一个赋值表达式 对赋值表达式求解的过程是: ①求赋值运算符右侧的“表达式”的值; ②赋给赋值运算符左侧的变量。 例如: 赋值表达式“a=3*5”的值为15,执行表达式后,变量a的值也是15。 注意: 一个表达式应该有一个值 左值 (lvalue) : 赋值运算符左侧的标识符 变量可以作为左值; 而表达式就不能作为左值(如a+b); 常变量也不能作为左值, 右值 (lvalue) :出现在赋值运算符右侧的表达式 左值也可以出现在赋值运算符右侧,因而左值 都可以作为右值。 赋值表达式中的“表达式”,又可以是一个赋值表 达式.例如: a=(b=5) 分析:括弧内的“b=5”是一个赋值表达式,它 的值等于5。执行表达式“a=(b=5)”相当于执
显示全部