- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
奥赛C第三讲
C语言的运算符和表达式 复习与回顾(三种基本数据类型) 在数学里当多个运算符一起组成一个表达式时,我们规定了优先级(先乘除后加减)和结合规则(从左至右)。 同样,在C语言中,我们也规定了每个运算符的结合规则及运算符之间的优先级。 %(取余)(注意:取余运算的操作数只能是整数,且结 果的符号与前一操作数的符号相同) 2、算术表达式 ? 用算术运算符和括符将操作数连接起来的式子。 ? 优先级:() *、/、% +、- ? 结合性:从左至右; ? 表达式的值: 数值型(int、long、unsigned、float、double); 如:i = 2; j = -i++; 求执行完这两句后i与j的值分别是多少 1、6种关系运算符: = = == != 2、关系表达式:用关系运算符将表达式连接起来的式子 ? 优先级: ( = = )( == != ) ? 结合性:自左至右; ? 表达式的值: 若为真,则结果为1; 若为假,则结果为0。 2、逻辑表达式:用逻辑运算符将表达式连接起来的式子 ? 优先级: ! || ? 结合性:自左至右; ? 表达式的值: 若为真,则结果为1; 若为假,则结果为0。 int a=5; float b=3.5; !a ( ) !(a b) ( ) a b ( ) !ab ( ) !a!b ( ) !(ab) ( ) a || b ( ) !a||b ( ) !a||!b ( ) !(a||b) ( ) (a b) (a 0) ( ) (a b) || (a 0) ( ) 例如: (1)a = 0; b = 1; c = a++ ( b = 3 ); 执行后: a为 ,b为 ,c为 。 例如: (1) n是小于m的偶数: (2)year是闰年: (能被4整除但不能被100整除,或能被400整除) 例如:(1) x=(y=12)/4 (2) x=y=12/4 (3) x=(y=12/4) (4)(x=y)=12/4 练习:设a=12,计算表达式a+=a-=a*12和a+=a-=a*=12的值 ? 求值规则: 先求解表达式1的值 若为真(非0),求解表达式2,并把表达式2的值 作为整个条件表达式的值 若为假(0),求解表达式3,并把表达式3的值作 为整个条件表达式的值 2、逗号运算符: , ? 形式: 表达式1,表达式2,…,表达式n ? 求值规则: 从左至右依次计算各表达式的值; ? 优先级: 最低; ? 结合性:自左至右; ? 表达式的值:最后一个表达式的值。 例如: a b y 表达式 y=a=4,b=5,a+b; y=(a=4,b=5,a+b); y=(a=4,b=5),a+b; y=a=(4,b=5),a+b; ? 形式有两种: sizeof 变量名 sizeof (类型名) ? 结果为整型数。 ◆?C语言允许整型、实型、字符型数据进行混合运算。 ◆?有3种转换方式:自动转换、赋值转换和强制转换。 一、类型自动转换
文档评论(0)