- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Company Logo 2.3 运算符和表达式 2.3.1 算术运算符和算术表达式 1.基本算术运算符 + 加法运算符,或正值运算符 。如2+9=11,+6 – 减法运算符,或负值运算符。如9-5=4,-5 ? 乘法运算符。如4*8=32 / 除法运算符。如7/2=3,两个整数相除结果为整数,舍去小数 % 求模运算符,或称求余运算符,要求两侧均为整型数。如9%2=1 Company Logo 运算结合方向:1. 自左向右,为左结合性 2. 自右向左,为右结合性 若在运算量的两侧的运算符有相同的优先级,则按它们的结合方向顺序处理。 算术运算符的结合方向为“自左至右”,即先左后右 。 优先级: ( ), ?, /, %, +, – Company Logo 注意: 1. 算术运算符为双目运算符,即运算对象为两个。 2. 两整数相除,结果仍为整数。若不为整数,则采用“向零靠拢取整”的方法。即取整后向零靠拢。 7/2值为3,而非4; 7/-2的值为-3,而非-4 3. 参加运算的两数中若有一个为float或double型,则结果为double型。 4. “%”为求模运算符或求余运算符,要求参加运算的两数必须为整数,且结果的符号与被除数的符号相同。 7%2=1 7%4=3 7%(-2)=1 7%(-4)=3 -7%2=-1 -7%4=-3 -7%(-2)=-1 -7%(-4)=-3 Company Logo 由算术运算符和圆括号将运算对象连接起来的有意义的式子称为算术表达式。运算对象包括常量、变量、函数等。例如,下面是一个合法的C++算术表达式: a*b/c-1.5+′a′ 在表达式中,使用左、右圆括号可以改变运算的处理顺序。例如,下面也是一个合法的C++算术表达式: a*b/(c-1.5)+′a′ Company Logo 2. 自增和自减运算符(++、--) + + 自增1 – – 自减1 ++i: 先使i值+1,再使用i值; i++: 先使用i值,再使i值+1. --i: 先使i值–1,再使用i值; i --: 先使用i值,再使i值–1 例如:若在以下每个语句中i初值为3,则 j=i++; j的值为3,然后i为4 printf(%d,i++); 打印出3,然后i为4 j=++i; j的值为4,i也为4 printf(%d,++i); 打印出4,i也为4 j=--i; j的值为2,i也为2 j=i--; j的值为3,然后i为2 Company Logo 注意: ++和--运算符只能用于变量,而不能用于常量或表达式。如:(i+j)++或5--是不合法的。 ++和--的结合方向是“自右至左”。如:i=4,则-i--相当于-(i--)结果为-4,而i的值为3。 在较复杂的表达式中,运算符的组合原则是尽可能多地自左而右将若干个字符组成一个运算符。如:a+++b等价于(a++)+b,而不是a+(++b)。 在只需对变量本身进行增1或减1,而表达式的值无关紧要的情况下,前缀运算和后缀运算的效果完全相同。 Company Logo 程序举例 【例2. 7】算术运算程序举例 【例2. 8】增1和减1运算符举例 Company Logo 2.3.2 赋值运算符和赋值表达式 1. 赋值运算符 符号“ = ”为赋值运算符,作用是将赋值运算符右边的表达式的值赋给其左边的变量。 x=12; 作用是执行一次赋值操作(运算),将12赋给变量x a=5+x; 作用是将表达式5+x的值赋给变量a 注意: 在赋值号“=”的左边只能是变量,而不能是常量或表达式, 如不能写成: 2=x; 或 x+y=a+b; Company Logo 2. 复合赋值运算符:在=号之前加一个其它运算符 += -= *= /= %= = = = |= ^= 例如: a+=5 等价于a=a+5 x*=y+8 等价于x=x*(y+8) a%=2 等价于a=a%2 x%=y+8 等价于x=x%(y+8) Company Logo 3. 赋值表达式 一般形式: 变量 = 表达式 例如: x=5 赋值表达式“x=5”的值为5,x的值也为5 x=7%2+(y=5) 赋值表达式的值为6,x的值也为6,y的值为5 a=(b=6)或a=b=6 赋值表达式的值为6,a、b的值均为6 a+=a*(a=5)
文档评论(0)