(5)--2.第二章 C语言中的数据类型及其基本操作.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《(5)--2.第二章 C语言中的数据类型及其基本操作.ppt》由会员分享,可在线阅读,更多相关《(5)--2.第二章 C语言中的数据类型及其基本操作.ppt(65页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023/11/29第二章第二章 C语言中的数据语言中的数据类型及其基本操作类型及其基本操作2.1 2.1 概述概述概述概述2.2 2.2 数据类型数据类型数据类型数据类型2.3 2.3 常量、变量常量、变量常量、变量常量、变量2.4 2.4 运算符与表达式运算符与表达式运算符与表达式运算符与表达式2023/11/29 2.1 概述概述 为什么要引入数据类型的研究?学习为什么要引入数据类型的研究?学习为什么要引入数据类型的研究?学习为什么要引入数据类型的研究?学习C C语言数据类型的语言数据类型的语言数据类型的语言数据类型的必要性?必要性?必要性?必要性?计算机程序对问题的求解涉及两个方面:一
2、是计算机程序对问题的求解涉及两个方面:一是计算机程序对问题的求解涉及两个方面:一是计算机程序对问题的求解涉及两个方面:一是数据或事数据或事数据或事数据或事实实实实,一个是,一个是,一个是,一个是计算或推理计算或推理计算或推理计算或推理的过程。它们对应与程序中的的过程。它们对应与程序中的的过程。它们对应与程序中的的过程。它们对应与程序中的数数数数据据据据和和和和操作操作操作操作两个部分内容。两个部分内容。两个部分内容。两个部分内容。数据数据数据数据是问题求解的基础,它可以是程序运行所需要的原是问题求解的基础,它可以是程序运行所需要的原是问题求解的基础,它可以是程序运行所需要的原是问题求解的基础,
3、它可以是程序运行所需要的原始数据,也可以是计算所得到的最终结果或是辅助性的始数据,也可以是计算所得到的最终结果或是辅助性的始数据,也可以是计算所得到的最终结果或是辅助性的始数据,也可以是计算所得到的最终结果或是辅助性的中间数据结果。要准确理解和运行程序设计语言提供的中间数据结果。要准确理解和运行程序设计语言提供的中间数据结果。要准确理解和运行程序设计语言提供的中间数据结果。要准确理解和运行程序设计语言提供的功能来描述问题及其求解过程、步骤,程序员功能来描述问题及其求解过程、步骤,程序员功能来描述问题及其求解过程、步骤,程序员功能来描述问题及其求解过程、步骤,程序员必须必须必须必须熟悉熟悉熟悉熟
4、悉语言环境所提供的各种语言环境所提供的各种语言环境所提供的各种语言环境所提供的各种数据类型数据类型数据类型数据类型(Data Type)(Data Type)的的的的精确定精确定精确定精确定义义义义、存储空间占用量存储空间占用量存储空间占用量存储空间占用量、取值范围取值范围取值范围取值范围、使用范畴使用范畴使用范畴使用范畴及其各种不及其各种不及其各种不及其各种不同数据类型数据之间的同数据类型数据之间的同数据类型数据之间的同数据类型数据之间的相互转换规则相互转换规则相互转换规则相互转换规则。2023/11/29对对对对数据数据数据数据的认识,可从以下几个方面掌握:的认识,可从以下几个方面掌握:的
5、认识,可从以下几个方面掌握:的认识,可从以下几个方面掌握:(1)数据的数据的取值类型取值类型取值类型取值类型(2)数据类型的数据类型的表示方法表示方法表示方法表示方法或或格式格式格式格式,包含数据的外部,包含数据的外部表示和内部表示表示和内部表示(3)数据类型数据类型值的有效范围值的有效范围值的有效范围值的有效范围(4)数据类型在及其内部的数据类型在及其内部的存储空间大小存储空间大小存储空间大小存储空间大小(5)数据类型能够进行那些数据类型能够进行那些运算或操作运算或操作运算或操作运算或操作(6)数据类型和其他数据类型数据类型和其他数据类型能否进行混合运算能否进行混合运算能否进行混合运算能否进
6、行混合运算(7)数据类型与其他数据类型之间能否相互转换以数据类型与其他数据类型之间能否相互转换以及如何及如何转换转换转换转换2023/11/29 操作操作操作操作是根据任务要求,针对数据进行处理和运算的是根据任务要求,针对数据进行处理和运算的是根据任务要求,针对数据进行处理和运算的是根据任务要求,针对数据进行处理和运算的过程过程过程过程或或或或动作序列动作序列动作序列动作序列。表达式表达式表达式表达式是程序设计的基本元素,它由是程序设计的基本元素,它由是程序设计的基本元素,它由是程序设计的基本元素,它由数据数据数据数据和和和和操操操操作符作符作符作符构成,其计算是对各种类型数据进行加工的构成,
7、其计算是对各种类型数据进行加工的构成,其计算是对各种类型数据进行加工的构成,其计算是对各种类型数据进行加工的基本操作基本操作基本操作基本操作。可从下面几点掌握可从下面几点掌握可从下面几点掌握可从下面几点掌握C C语言表达式的语言表达式的语言表达式的语言表达式的构造和运算规律构造和运算规律构造和运算规律构造和运算规律:(1)(1)括号的匹配及运算规则括号的匹配及运算规则括号的匹配及运算规则括号的匹配及运算规则(2)(2)表达式类型及其运算优先顺序关系表达式类型及其运算优先顺序关系表达式类型及其运算优先顺序关系表达式类型及其运算优先顺序关系(3)(3)运算符的优先级别及其运算结合方向运算符的优先级
8、别及其运算结合方向运算符的优先级别及其运算结合方向运算符的优先级别及其运算结合方向(4)(4)操作数数据类型、结果和目标数据类型及其转换关系操作数数据类型、结果和目标数据类型及其转换关系操作数数据类型、结果和目标数据类型及其转换关系操作数数据类型、结果和目标数据类型及其转换关系2023/11/29数据的描述数据的描述数据的操作数据的操作算法算法 +数据结构数据结构程序任务程序任务程序任务程序任务:对数据进行处理。对数据进行处理。对数据进行处理。对数据进行处理。数据数据数据数据:程序处理的对象。程序处理的对象。程序处理的对象。程序处理的对象。运算符运算符运算符运算符:施加给数据的操作。施加给数据
9、的操作。施加给数据的操作。施加给数据的操作。表达式的基本元素表达式的基本元素表达式的基本元素表达式的基本元素:数据和运算符。数据和运算符。数据和运算符。数据和运算符。2.2 数据类型数据类型2023/11/29PASCALPASCAL语言数据类型:语言数据类型:语言数据类型:语言数据类型:(1)PASCAL(1)PASCAL语言提供了专门的标准数据类型语言提供了专门的标准数据类型语言提供了专门的标准数据类型语言提供了专门的标准数据类型BOOLBOOL作为逻作为逻作为逻作为逻辑数据类型值辑数据类型值辑数据类型值辑数据类型值(2)(2)以用户定义以用户定义以用户定义以用户定义子界类型子界类型子界类
10、型子界类型作为作为作为作为数组数组数组数组下标取值范围的界定,取下标取值范围的界定,取下标取值范围的界定,取下标取值范围的界定,取值范围值范围值范围值范围可以不是整数可以不是整数可以不是整数可以不是整数数据类型数据类型数据类型数据类型(3)(3)在构造数据类中,它提供了数组、在构造数据类中,它提供了数组、在构造数据类中,它提供了数组、在构造数据类中,它提供了数组、集合、记录集合、记录集合、记录集合、记录和文件类和文件类和文件类和文件类C C语言数据类型:语言数据类型:语言数据类型:语言数据类型:(1)C(1)C语言语言语言语言没用提供专门的逻辑数据类型没用提供专门的逻辑数据类型没用提供专门的逻
11、辑数据类型没用提供专门的逻辑数据类型,用,用,用,用0 0和和和和非非非非0 0两个概两个概两个概两个概念来表示念来表示念来表示念来表示(2)(2)它规定数组它规定数组它规定数组它规定数组下标是整数数据类型下标是整数数据类型下标是整数数据类型下标是整数数据类型且且且且上、下界不确定上、下界不确定上、下界不确定上、下界不确定(3)(3)在构造数据类中,在构造数据类中,在构造数据类中,在构造数据类中,C C语言提供了数组、语言提供了数组、语言提供了数组、语言提供了数组、结构体、共用体结构体、共用体结构体、共用体结构体、共用体和文件和文件和文件和文件2023/11/29C C语言提供的数据类型语言提
12、供的数据类型语言提供的数据类型语言提供的数据类型基本类型基本类型基本类型基本类型(简单类型)(简单类型)(简单类型)(简单类型)构造类型构造类型构造类型构造类型(组合类型)(组合类型)(组合类型)(组合类型)指针类型指针类型指针类型指针类型空类型(空类型(空类型(空类型(voidvoid)数值类型数值类型数值类型数值类型字符类型字符类型字符类型字符类型(char)(char)枚举类型枚举类型枚举类型枚举类型(enum)(enum)整型整型整型整型(int)(int)实型实型实型实型(float/double)(float/double)数组类型数组类型数组类型数组类型结构体类型结构体类型结构体
13、类型结构体类型(struct)(struct)共用体类型共用体类型共用体类型共用体类型(union)(union)文件类型文件类型文件类型文件类型(file)(file)数据类型数据类型数据类型数据类型涉及的内容:涉及的内容:涉及的内容:涉及的内容:1.不同类型数据在内存中不同类型数据在内存中占不同的占不同的存储空间存储空间存储空间存储空间,且,且采取不同的采取不同的存储形式存储形式存储形式存储形式。2.不同类型数据对应不同不同类型数据对应不同的的取值范围取值范围取值范围取值范围。3.数据类型确定了允许对数据类型确定了允许对其进行的其进行的操作操作操作操作。2023/11/29u 2.2.1
14、2.2.1 基本数据类型的存储空间长度及其取值范围基本数据类型的存储空间长度及其取值范围基本数据类型的存储空间长度及其取值范围基本数据类型的存储空间长度及其取值范围数数数数据据据据类类类类型型型型的的的的取取取取值值值值范范范范围围围围:任任任任何何何何数数数数据据据据类类类类型型型型都都都都需需需需要要要要一一一一定定定定存存存存储储储储空空空空间间间间来来来来存放其值,该空间大小将约束数据类型的取值范围。存放其值,该空间大小将约束数据类型的取值范围。存放其值,该空间大小将约束数据类型的取值范围。存放其值,该空间大小将约束数据类型的取值范围。例如:例如:例如:例如:charchar类型占类型
15、占类型占类型占1 1个字节的存储空间;个字节的存储空间;个字节的存储空间;个字节的存储空间;intint与环境有关,对与环境有关,对与环境有关,对与环境有关,对1616位机环境位机环境位机环境位机环境intint大小为大小为大小为大小为1616位,位,位,位,32 32位环境多数情况下位环境多数情况下位环境多数情况下位环境多数情况下intint是是是是3232位;位;位;位;voidvoid类型表示无返回值的函数或函数无参数情形。类型表示无返回值的函数或函数无参数情形。类型表示无返回值的函数或函数无参数情形。类型表示无返回值的函数或函数无参数情形。C C语语语语言言言言的的的的ANSIANSI
16、标标标标准准准准只只只只规规规规定定定定各各各各数数数数据据据据类类类类型型型型的的的的最最最最小小小小取取取取值值值值范范范范围围围围,没没没没有有有有规规规规定定定定所所所所需需需需字字字字节节节节数数数数大大大大小小小小。它它它它依依依依赖赖赖赖于于于于机机机机器器器器、编编编编译译译译器器器器和和和和操操操操作作作作系系系系统统统统环环环环境版本。境版本。境版本。境版本。2023/11/29数据类型数据类型数据类型数据类型存储空间长度存储空间长度存储空间长度存储空间长度取值范围取值范围取值范围取值范围 字符类型字符类型字符类型字符类型charchar1 bytes1 bytes-128
17、+127-128+127 整型类型整型类型整型类型整型类型intint2 bytes2 bytes-32768+32767-32768+32767浮点类型浮点类型浮点类型浮点类型floatfloat4 bytes4 bytes-3.4E-38+3.4E38,-3.4E-38+3.4E38,6 6 6 6位精度位精度位精度位精度doubledouble8 bytes8 bytes-1.7E-308+1.7E+3.8,-1.7E-308+1.7E+3.8,16161616位精度位精度位精度位精度表表表表2-12-1 C C语言基本数据类型存储空间长度与取值范围对照表语言基本数据类型存储空间长度与取
18、值范围对照表语言基本数据类型存储空间长度与取值范围对照表语言基本数据类型存储空间长度与取值范围对照表2023/11/29u 2.2.2 2.2.2 基本数据类型的内部存储格式基本数据类型的内部存储格式基本数据类型的内部存储格式基本数据类型的内部存储格式1.1.整型数据类型整型数据类型整型数据类型整型数据类型 1616位环境下,整型数据类型机内部的存储格式为:位环境下,整型数据类型机内部的存储格式为:位环境下,整型数据类型机内部的存储格式为:位环境下,整型数据类型机内部的存储格式为:int*2 bytes:int*2 bytes:S SMMM MMMM MMM MMMM MMMMMMMM MMM
19、MMMMMS S是符号位,是符号位,是符号位,是符号位,MM是数值位。是数值位。是数值位。是数值位。计算机中的符号位占用数据存储空间中的一个计算机中的符号位占用数据存储空间中的一个计算机中的符号位占用数据存储空间中的一个计算机中的符号位占用数据存储空间中的一个bitbit位,一位,一位,一位,一般用般用般用般用0 0表示表示表示表示正号正号正号正号,1 1表示表示表示表示负号负号负号负号。例例例例2-1 2-1 整数整数90和和-90在机器内部的表示值。在机器内部的表示值。90 90 -90-90的表示是什么样子的呢?是的表示是什么样子的呢?是的表示是什么样子的呢?是的表示是什么样子的呢?是(
20、1 10000000 01011010)?0000000 01011010)?0 00000000 010110100000000 010110101 111111111111111 10100110101001102023/11/29 机内表示以互补运算理论为基础,即整数在机内的表机内表示以互补运算理论为基础,即整数在机内的表机内表示以互补运算理论为基础,即整数在机内的表机内表示以互补运算理论为基础,即整数在机内的表示是以示是以示是以示是以补码补码补码补码形式存放。形式存放。形式存放。形式存放。l l原码:原码:原码:原码:直接用直接用直接用直接用0/10/1表示符号位,后面跟实际数据值的表
21、示符号位,后面跟实际数据值的表示符号位,后面跟实际数据值的表示符号位,后面跟实际数据值的二进制编码本身。二进制编码本身。二进制编码本身。二进制编码本身。l l反码:反码:反码:反码:对原码,除符号位外,所有数据位求反所得对原码,除符号位外,所有数据位求反所得对原码,除符号位外,所有数据位求反所得对原码,除符号位外,所有数据位求反所得到的数据编码。到的数据编码。到的数据编码。到的数据编码。l l补码:补码:补码:补码:对正整数保持不变。对负整数,在反码基础对正整数保持不变。对负整数,在反码基础对正整数保持不变。对负整数,在反码基础对正整数保持不变。对负整数,在反码基础上加上加上加上加1 1所得到
22、的数据编码。所得到的数据编码。所得到的数据编码。所得到的数据编码。当作原码时,其当作原码时,其当作原码时,其当作原码时,其10#10#值为值为值为值为-32677-32677计算机将其看作补码并自动还原成原码计算机将其看作补码并自动还原成原码计算机将其看作补码并自动还原成原码计算机将其看作补码并自动还原成原码 10#10#值是值是值是值是-90-902023/11/292.2.字符数据类型字符数据类型字符数据类型字符数据类型()()l l字符数据类型占用一个字节存储空间;字符数据类型占用一个字节存储空间;字符数据类型占用一个字节存储空间;字符数据类型占用一个字节存储空间;l l变量声明用变量声
23、明用变量声明用变量声明用charchar,用一对单引号,用一对单引号,用一对单引号,用一对单引号()()表示;表示;表示;表示;l l以以以以ASCIIASCII代码格式表示,取值范围为代码格式表示,取值范围为代码格式表示,取值范围为代码格式表示,取值范围为-128-128127127或或或或0 0255255;例如:例如:例如:例如:aa的的的的ASCIIASCII码值是码值是码值是码值是9797,内部存储格式为,内部存储格式为,内部存储格式为,内部存储格式为0110 00010110 0001。ASCIIASCII码有效编码位只有码有效编码位只有码有效编码位只有码有效编码位只有7 7位,最
24、高位用于做奇偶校验,取位,最高位用于做奇偶校验,取位,最高位用于做奇偶校验,取位,最高位用于做奇偶校验,取值范围是值范围是值范围是值范围是0-1270-127。最高位为。最高位为。最高位为。最高位为1 1时时时时(扩展码扩展码扩展码扩展码)也可表示图形符号。也可表示图形符号。也可表示图形符号。也可表示图形符号。l l重要规则:重要规则:重要规则:重要规则:规则规则规则规则1:1:前前前前3232个字符及其个字符及其个字符及其个字符及其ASCIIASCII码值为码值为码值为码值为127127的字符都是控制性字符,的字符都是控制性字符,的字符都是控制性字符,的字符都是控制性字符,要记住特殊字符的值
25、,如回车要记住特殊字符的值,如回车要记住特殊字符的值,如回车要记住特殊字符的值,如回车1313、换行、换行、换行、换行1010、空格、空格、空格、空格3232。规则规则规则规则2:2:记住数字记住数字记住数字记住数字00的的的的ASCIIASCII码值为码值为码值为码值为4848,1199的值可依次推算。的值可依次推算。的值可依次推算。的值可依次推算。规则规则规则规则3:3:记住记住记住记住AA和和和和aa的值,所有英文字母大小写值可依次推算。的值,所有英文字母大小写值可依次推算。的值,所有英文字母大小写值可依次推算。的值,所有英文字母大小写值可依次推算。规则规则规则规则4:4:大大大大AA转
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 5-2.第二章 C语言中的数据类型及其基本操作 第二 语言 中的 数据类型 及其 基本 操作
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内