C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt

C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt

ID:50318757

大小:1.07 MB

页数:62页

时间:2020-03-08

C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt_第1页
C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt_第2页
C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt_第3页
C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt_第4页
C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt_第5页
资源描述:

《C++程序设计 教学课件 作者 郑莉第2章运算的模拟.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1第2章运算的模拟清华大学郑莉2目录2.1运算符与表达式2.2运算符优先级与类型转换2.3运算符重载简介32.1运算符与表达式表达式由一个或多个操作数(operand)通过操作符(或运算符,operator)组合而成最简单的表达式仅包含一个常量或者变量,例如2,i,data_searched都属于表达式较复杂的表达式则由操作符及一个或多个操作数组成任何表达式必然包含操作数含有操作符的表达式的值可以通过对操作数做指定操作获得可以将多个操作符和操作数结合起来组成一个复杂表达式,这样的复杂表达式被称为“复

2、合表达式”42.1运算符与表达式是否能够成功地计算复合表达式与子表达式的计算顺序有关,因此,要想在C++中正确地实现运算,就必须了解C++中运算符的内部规则。一般来说,子表达式的计算顺序由操作符的“优先级”和“结合方向”来决定。可见,“优先级”和“结合方向”是计算机数据运算的重要概念。那么,什么是“优先级”,什么是“结合方向”?优先级的高低决定同一个表达式中出现的不同运算符的计算次序,计算机先计算优先级较高的运算符,然后再计算优先级较低的运算符。结合方向决定了表达式中每个运算符的计算方向。52.1.

3、1算术运算算术运算符及其使用方法如果“/”运算的两个操作数都是整数,则结果取整,如果需要获得实数结果,那就需要将其中至少一个操作数改为浮点数“%”两侧的操作数必须为整数2.1运算符与表达式运算符功能用法+-一元正号一元负号+expr-expr*/%乘法除法求余expr1*expr2expr1/expr2expr1%expr2+-加法减法expr1+expr2expr1–expr262.1.1算术运算“溢出”现象的根本原因在于计算机能够容纳的最大或最小值是有规定的。当算术运算的结果超出了运算平台能够容

4、纳的最大值或最小值时,就会导致溢出(overflow)。另外当除数为0时,算术运算就失去了意义,编译程序时会报错。当然,这些错误都是可以通过正确的编程避免的浮点数的算术运算还有一个“精度”问题。在计算机中,浮点数存储是近似的,浮点数运算的结果精度受到底层数据类型的固有精度的影响2.1运算符与表达式72.1.1算术运算例2-1算术运算的示例程序2.1运算符与表达式intmain(){intdata_searched;//声明而不赋值inti=2;//声明并赋值cout<<"i="<

5、/测试赋值的结果intk=4,l=2;//连续的同类型赋值之间可以用逗号间隔i=k+l;//加法运算cout<<"i(k+l)="<

6、/2在C++中的直接运算结果是:"<<6/2<

7、/3在本机上能得到的最精确值="<<(double)5/3<

8、.85/3在本机上能得到的最精确值=1.66667102.1.1算术运算例2-1分析与思考对于整数之间的加减乘除运算和正数之间的取余运算,C++中的计算规则跟我们之前学过的数学运算基本相同,注意当整数相除时,C++将只取运算结果的整数部分要得到两个操作数运算(例如除法)的浮点结果,就需要将至少一个操作数转换为浮点类型,例如要得到14除以5的浮点数结果,可以写(float)14/5或14/(float)5,但是float(14/5)的写法是无效的,因为修饰的对象是14/

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。