d04讲--简单程序设计(2)--运算符赋值语句及数据输入输出.ppt

d04讲--简单程序设计(2)--运算符赋值语句及数据输入输出.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.复合的赋值运算符 2.复合的赋值运算符 --注意: 如果复合赋值运算符右边是包含若干项的表达式,则相当于它有括号。 例: ① x %= y + 3 ② x %= (y + 3) |__↑ ③ x = x %(y + 3) (不要错写成 x = x % y + 3 ) 2.复合的赋值运算符--说明: 其它二元(二目)运算符,都可以与赋值符一起组合成复合赋值符。有关算术运箅的复合赋值运算符有:+=,-=,*=,/=,%= C语言采用这种复合运算符,一是为了简化程序,使程序精练,二是为了提高编译效率,能产生质量较高的目标代码。 3. 赋值表达式 一般形式: 变量 赋值运算符 表达式 求解过程: 先求赋值运算符右侧的“表达式”的值, 然后赋给赋值运算符左侧的变量。 (此说法在 “表达式中含有 ,” 时可能不对) 赋值运算符左侧的标识符称为“左值” 出现在赋值运算符右侧的表达式称为“右值” 注意:并不是任何对象都可以作为左值的,表达式和 常变量就不能作为左值。 赋值表达式的值:等于其右值 赋值表达式中的“表达式”,也可以是一个赋值表达式。 例:a=(b=5) 相当于执行“b=5” 和“a=b”两个赋值 表达式 赋值表达式也可以包含复合的赋值运算符。 例: ( a = 12 ;) a += a -= a*a 4.赋值过程中的类型转换 如果赋值运算符两侧的类型一致,则直接进行赋值。 例:i=6 (假设i已定义为int型) 如果赋值运算符两侧的类型不一致,但都是数值型或字符型时,在赋值时要进行类型转换。类型转换是系统自动进行的。 4. 赋值过程中的类型转换--转换规则 (先把握一点:不能溢出) ⑴ 将浮点型数据(包括单、双精度)赋给整型变量时,先对浮点数取为整,然后赋予整型变量。 int a; a=3.45; 实际上 a=3; ⑵ 将整型数据赋给单、双精度变量时,数值不变,但以浮点数形式存储到变量中。 float c; c=3; 实际上 a=3.0000000; 4. 赋值过程中的类型转换--转换规则 (先把握一点:不能溢出) ⑶ 将一个double型数据赋给float变量时,截取其前面7位有效数字,存放到float变量的存储单元(4个字节)中。但应注意数值范围不能溢出; 将一个float型数据赋给double变量时,数值不变,有效位数扩展到16位,在内存中以8个字节存储。 ⑷字符型数据赋给整型变量时,将字符的ASCII码赋给整型变量。 ⑸将一个占字节多的整型数据赋给一个占字节少的整型变量/字符变量时,只将其低字节原封不动地送到该变量. 例:int i=289; /* 已定义i为整型变量 */ char c = a; /* 已定义c为字符变量 */ c=i; /* 将一个占2字节的int型数据赋给char型变量 */ 例 有符号整数赋值给无符号整型变量, 数据会失真。 #include stdio.h void main ( ) {unsigned a; /* 定义a为无符号整型变量 */ int b; /* 定义b为有符号整型变量 */ b=-1; b a=b; a printf(%u\n,a); } 例:3.2 无符号整数赋值给有符号整型变量,注意数值范围。 #include stdio.h void main ( ) {unsigned a; int b; a=65535; /* 两个字节16位全为1 */ b=a; /* b的数值范围为-32768~32767 */ printf(%d\n,b); } 5 赋值语句 构成:赋值表达式加上一个分号。 作用:将一个表达式的值赋给一个变量。 赋值表达式具有计算和赋值双重功能。程

文档评论(0)

586334000 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档