- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 数据类型及格式输出(4.5.1 )、运算符与表达式 主要内容 C的数据类型 常量与变量 整型数据及格式输出 实型数据及格式输出 字符型数据及格式输出 字符串及格式输出 变量的赋初值 各类数值型数据混合计算 算术运算符和算术表达式 赋值运算符和赋值表达式 逗号运算符和逗号表达式 int a,b,c ; float x,y; char c1,c2; 或 int c1,c2; 例如: char c; c= ’A’; c=65; c= ’\101’; c= ’\x41’; c=0101;c=0x41; §3.7 各类数值型数据间的混合运算 三类算术运算符号: 1. 基本算术运算符 2. 强制类型转换运算符 3. 自增、自减运算符 要求掌握每一种运算符号的功能、优先级、结合性 [P375 附录III ] 3.8 算术运算符与算术表达式 结合性的含义:当某一运算对象两侧的运算符号优先级相同时,按照结合性所规定的方向进行运算。 如 a#b#c (#代表某一运算符) 若先运算a#b,再将其结果与c运算, 称为左结合性:从左至右运算 若先运算b#c,再将a与其结果运算, 则称右结合性:从右至左运算 一、基本算术运算符 +:加法 -:减法 *:乘法 /:除法 %:取余或模 两个整数相除取整数商 3/5=0 -5/3=-1 3./5=0.6 3/5.=0.6 3%5=3 %两侧都应为整型数据 2.5%3出错 优先级:(*,/,%)高于(+,-) 结合性:自左向右 P375附录III 二、算术表达式 用算术运算符和括符将操作数连接起来的式子。 优先级: ( ) * / % + - 结合性 自左向右,与数学上一致。 三、强制类型转换运算符 (类型名)常量 (类型名)变量 (类型名)表达式 功能:将一个常量、变量或表达式转换成所需类型。 优先级:属单目运算符,仅低于括号,高于基本算术运算符。 结合性:自右向左 注意:类型名要用括号括起来。 例: float(2/3) 错误 (int)(2.5)%3 值为2 (float)5/2 值为2.500000 四、自增与自减运算符 (重点和难点) ++i,--i i先自增(减)1,再使用i i++,i-- 先使用i,i再自增(减)1 (1) 单独使用时 ++i; 等 价 i++; 等 价 i=i+1; (2) j=++i; (3) j=i++; 若i的初始值为3 i=4; j=4; i=4; j=3; 结合性: 自右向左 例:i = 2; j = -i++; 分析: (1)++、--、+(正号)、-(取负)是同级运算符,结合方向:自右向左。 (2) -i++等价于-(i++) (3) 对于括号内的自增运算,又要先使用i,再使i增加1。 运算结果: i的值为3,j的值为-2。 优先级:属单目运算符,仅低于括号类,高于基本算术运算符。 a=3; printf(“%d”,a++); 运算结果: 输出3,a的值为4。 a=3; printf(“%d”,++a); 运算结果: 输出4,a的值为4。 例:3 - - 出错 i + + + j 即( i + +) + j,非 i + (+ + j) - i - - 即 - ( i - -) ,非 (- i) - - a=3; b= - a++ ; 执行后, b的值为-3,a的值为4 3.9+4.2 赋值运算符、赋值表达式、赋值语句 赋值运算符:= 赋值表达式:变量=表达式 功能:将“=”右侧表达式的值赋给左侧变量的 值,赋值表达式的值是被赋值变量的值。 赋值语句:变量=表达式 功能:将“=”右侧表达式的值赋给左侧变量的值。 * 所有表达式末尾加“ ;”后即变为语句 赋值表达式举例: (1) x=(y=12)/4 y值为12,x值为3,表达式的值为3 (2) x=y=12/4 y值为3,x值为3,表达式的值为3 (3) x=(y=12/4) y值为3,x值为3,表达式的值为3 (4) (x=y)=12/4 该赋值运算符左边不是变量,而是一个表达式 一、赋值运算符 赋值运算符:= 优先级:仅优先于最低级的逗号运算符。 结合性:自右向左 例:c=b=a=5 c=(b=(a=5)) 注1)赋值运算符号与数学中的“等号”不相同; 注2)自增、自减运算实际上也是一个特殊的赋值运算符。 赋值运算过程 “变量=表达式”过程: ①计算右侧表达式的值 ②类型转换:若“=”两侧变量和表达式
文档评论(0)