文档详情

第二章数据类型与表达式.ppt

发布:2017-06-10约1.29万字共64页下载文档
文本预览下载声明
一、C++的数据类型 数据是程序处理的对象,为了描述现实世界中不同特点的事物,C++设计了多种数据类型。C++提供了多种数据类型用于表示和存储数据,以满足程序处理的需要。右图列出了C++的各种数据类型。 其中a为十进制数,n为十进制整数,其值为a×10n。 指数形式的表示法有两点要求:e或E前、后必须有数字,e或E后的数字必须是整数。 例如,合法的实数:1.5E3、2.7E-6等。不合法的实数:E-3、2.7E等。 转义字符有两种表式方法: 其中字符助记符为一个字母,字符的ASCII码值为\ooo与\xhh,其中\ooo表示为3位八进制数,\xhh表示为2位十六进制数 符号常量的特点是: ? 习惯上符号常量的标识符用大写字母,变量标识符用小写字母,以示区别; ? 符号常量与变量不同,它的值在其作用域内不能改变,也不能再被赋值。 使用符号常量的好处是:含义清楚,并且能做到“一改全改”。 例如,下面的语句是错误的: #define PI=3.14; //不能使用赋值运算符“=”,且命令结尾不能加分号 所以【实例2-1】又可改为下面这种形式: 点击查看使用常变量的【实例2-1】源程序x2_1_3.cpp 本程序的运行结果同【实例2-1】。 需要注意的是,下面的这两种形式是错误的: const double PI; //错误,定义时没有给出初值 PI=3.14159; //错误,常量不能被改变 程序运行结果如下: (3)当“/”运算符用两个整数相除时,如果商含有小数部分,将被截掉。因此,如果要进行通常意义的除运算,则至少应保证除数或被除数中有一个是浮点数或双精度数。 (4)在使用算术运算符时,需要注意有关算术表达式求值溢出的处理问题。在做除法运算时若除数为零或实数的运算结果溢出,系统会认为是一个严重的错误而终止程序的运行并进行提示,而整数运算产生溢出时则不认为是一个错误,但这时运行结果已不正确了,所以对整数溢出的处理是程序设计者要注意的问题。 本讲小结 这一讲我们学习了C++的算术运算符、逻辑运算符、赋值运算符、自增自减运算符、条件运算符、逗号运算符、sizeof运算符、括号运算符以及位运算符。各种运算的种类繁多,且具有不同的优先级与结合性。复杂的运算符要多使用括号以方便阅读与理解。在表达式中,参加运算的数据如果类型不同可以自动转换,自动转换的规律是从低类型向高类型转换,以保持数据精度,不丢失数据为原则。C++还提供了多种强制类型转换方法,在特定的场合进行应用。 返回本讲目录 本章小结 数据是程序处理的对象,数据可以依据其本身的特点进行分类。C++中的数据类型又分为基本类型和自定义类型,基本类型是C++编译系统内置的。C++的基本数据类型有bool(布尔型)、char(字符型)、int(整型)、float(浮点型,表示实数)、double(双精度浮点型,简称双精度型)。除了bool型外,数据类型主要有两大类:整数和浮点数。因为char型从本质上说也是整数类型,它是长度为1字节的整数,通常用来存放字符的ASCII码。 本章还介绍了C++中的运算符与表达式。主要的运算符有算术运算符、关系运算符、逻辑运算符、赋值运算符、自增自减运算符、条件运算符、逗号运算符、sizeof运算符、括号运算符、位运算符。在学习运算符的时候,除了注意其功能外,还要注意它们的优先级以及结合性。 返回本章目录 一、算术、关系、逻辑及赋值运算符及其表达式 【实例2-2】 阅读程序,分析并写出程序运行结果。 点击打开【实例2-2】 源程序 程序分析: 这个程序主要就是考查算术运算、关系运算、逻辑运算和复合的赋值运算。要弄清这些问题,我们就要搞清楚C++中的各类运算的规则。 返回本讲目录 1.算术运算符 算术运算符是C++中最常用的一种运算符 ,基本算术运算符如下表所示。说明:表中优先级数字越小,优先级越高,同级的按结合性顺序,多数自左向右运算。正号与负号为一元目运算符,其余均为二元目运算符。 优 先 级 运 算 符 含 义 结 合 性 2 + 正号 从右向左 - 负号 4 * 乘 从左向右 / 除 % 取余 5 + 加 - 减 返回本讲目录 (1)算术运算符的意义与数学中相应符号的意义是一致的,它们之间的相对优先级关系与数学中也是一致的。 (2)“%”运算符也被称为取余运算符,要求它的两个操作数的值必须是整数或字符型数。它是前一个操作数被后一个操作数除的余数。当两个操作数都是正数时,结果为正,如果一个(或两个)操作数为负数时,余数的符号取决于机器,因此,移植性无法保证。 返回本讲目录 2.关系运算符 在解决许多问题时都要进行情况判断,C++提供了关系运算符
显示全部
相似文档