电子科技大学:《面向对象程序设计语言C++》课程教学资源(PPT课件讲稿)第五章 构造数据类型

第五章构造数据类型 丘志杰 电子科技大学 计算机学院软件学院
第五章 构造数据类型 丘志杰 电子科技大学 计算机学院 软件学院

枚举类型 “枚举”是指将变量所有可能的取值 列举出来,变量的取值只限于列举出来的常 量。枚举类型的声明的一般形式如下: enum枚举类型名{枚举常量1,枚举常量2,,枚举常量n 枚举! 当没给各枚举常量指定值时,其值依次默认 为0、1、2、∴;在定义枚举类型时,也可 使用赋值号另行指定枚举常量的值
枚举类型 “枚举”是指将变量所有可能的取值一一 列举出来,变量的取值只限于列举出来的常 量。枚举类型的声明的一般形式如下 : ➢当没给各枚举常量指定值时,其值依次默认 为0、1、2、…;在定义枚举类型时,也可 使用赋值号另行指定枚举常量的值。 enum 枚举类型名 {枚举常量1, 枚举常量2,…, 枚举常量n}; 枚举!

举例 例: Need To do
例:NeedTo Do 举例

数组 数组是一组在内存中依次连续存 放的、具有同一类型的数据变量 所组成的集合体。 数组元素用数组名与带方括号的 数组下标一起标识
数组 • 数组是一组在内存中依次连续存 放的、具有同一类型的数据变量 所组成的集合体。 • 数组元素用数组名与带方括号的 数组下标一起标识

维数组定义与使用 维数组定义的一般形式为: 数据类型数组名[常量表达式 说明: >数组元素的类型可以是void型以 外的任何数据类型。 >数组名代表数组元素在内存中的起 始地址,是一个地址常量
一维数组定义与使用 一维数组定义的一般形式为: 数据类型 数组名[常量表达式]; 说明: ➢ 数组元素的类型可以是void型以 外的任何数据类型。 ➢数组名代表数组元素在内存中的起 始地址,是一个地址常量

数组定义之后,系统会将从内存中 为其分配一块连续的存储空间,从第1 个数据元素开始依次存放各个数组元素。 例如:inta[5] 假设地址 内容 符号地址 103410A0 a 103410A4a[] a+1 103410A8 [2] 2 >5*sizeof(int) 103410ACa[3] a+3 103410B0a4] a+4
数组定义之后,系统会将从内存中 为其分配一块连续的存储空间,从第1 个数据元素开始依次存放各个数组元素。 例如: int a[5]; 假 设地 址 内 容 符号地址 103410A0 103410A4 103410A8 103410AC 103410B0 a a+1 a+2 a+3 a+4 5*sizeof(int) a[0] a[1] a[2] a[3] a[4]

维数组的初始化 维数组初始化的语法形式为: 数据类型数组名[常量表达式]=初 值1,初值2,…,初值n 例如: int array[3]=5,6,7]; int array. 2[3]={1,2};
一维数组的初始化 一维数组初始化的语法形式为: 数据类型 数组名 [常量表达式] ={初 值1, 初值2,…, 初值n}; 例如: int array[3]={5,6,7}; int array2[3]={1,2};

存取一维数组元素的语法形式为: 数组名[下标表达式]; 读数组元素的地址通过数组名来读 取,格式如下: 数组名+整型表达式; 或 &数组名[下标表达式];
存取一维数组元素的语法形式为: 数组名 [下标表达式]; • 读数组元素的地址通过数组名来读 取,格式如下: 数组名+整型表达式; 或 &数组名[下标表达式];

使用数组要注意的地方 G在使用数组时最常犯的错误是下标越界。 数组名是一个地址常量,不能作为左值 (赋值的目标)。因此,不能将一个数组整体 拷贝给另外一个数组。例如: int a[51, c[51, i a=c;//错误 正确的方法是将对应的元素进行拷贝: for(i=0;i<5;i++) ali]=clil
使用数组要注意的地方 在使用数组时最常犯的错误是下标越界。 数组名是一个地址常量,不能作为左值 (赋值的目标)。因此,不能将一个数组整体 拷贝给另外一个数组。例如: int a[5],c[5],i; a=c; //错误! 正确的方法是将对应的元素进行拷贝: for(i=0;i<5;i++) a[i]=c[i];

字符数组与字符串 存放字符型数据的数组称为字符数组。 1.用字符进行初始化 例如: char sl[]C, h, i,n, a]; 2用字符串进行初始化 例如: char s2IF"China
字符数组与字符串 存放字符型数据的数组称为字符数组。 1.用字符进行初始化 例如: char s1[ ]={'C','h','i','n','a'}; 2.用字符串进行初始化 例如: char s2[ ]="China";
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言程序设计》课程电子教案(PPT教学课件)第三章 分支结构.ppt
- 计算机维护与维修(PPT课件讲稿)第十二章 笔记本电脑维护维修.ppt
- 西安电子科技大学:《微机原理与接口技术》课程教学资源(PPT课件讲稿)第四章 汇编语言程序设计(主讲:王晓甜).pptx
- 厦门大学计算机科学系:《大数据技术原理与应用》课程教学资源(PPT课件)第12章 数据可视化.ppt
- 《计算机操作系统》课程教学资源(PPT讲稿)Windows 2003的安全.ppt
- 《计算机图形学》课程教学资源(PPT课件讲稿)Chapter 5 Attributes of Graphics Primitives.pptx
- 《计算机原理及应用》课程教学资源(PPT课件讲稿)第9章 单片机I/O接口扩展技术.pptx
- 《Access 2013数据库技术及应用》课程教学资源(PPT课件讲稿)第12章 VBA模块设计.ppt
- 清华大学:智能弹性重叠网关键技术研究(PPT讲稿,指导老师:李衍达).ppt
- 中国科学技术大学:《数据结构及其算法》课程PPT教学课件(Data Structure and Algorithm)第4章 栈和队列(主讲:刘东).pptx
- 北京科技大学:《物联网工程》课程教学资源(PPT课件讲稿)课程介绍.ppt
- 《电脑组装与维护实例教程》教学资源(PPT课件讲稿)第4章 输入输出设备介绍及选购.ppt
- 深圳大学:Learning 3D mesh segmentation and labeling(PPT讲稿).ppt
- 沈阳理工大学:《大学计算机基础》课程教学资源(PPT课件讲稿)第3章 办公软件 3.2 电子表格软件Excel 2010.ppt
- 对外经济贸易大学:《电子商务概论》期末考试试卷(部分含答案).pptx
- 清华大学:Pass-Join(A Partition based Method for Similarity Joins).pptx
- 《信息安全概论》课程教学资源(PPT课件讲稿)第九章 计算机软件的安全性.ppt
- 合肥工业大学:《数据库系统》课程教学资源(PPT课件讲稿)数据库编程 ACCESS、MYSQL、Oracle(张国富)第一章 绪论.ppt
- 白城师范学院:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第四章 数据库安全性.pptx
- 清华大学:A Heterogeneous Accelerator Platform for Multi-subject Voxel-based Brain Network Analysis(PPT讲稿).pptx
- 武汉科技大学中南分校:Windows 2000/XP网络组建与系统管理(系统安装,李燕).ppt
- 《The C++ Programming Language》课程教学资源(PPT课件讲稿)Lecture 06 OOP with Templates.ppt
- 厦门大学:《分布式数据库》课程教学资源(PPT课件讲稿)专题一 分布式数据库介绍.ppt
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)第6章 Data-Level Parallelism in Vector, SIMD, and GPU Architectures.pptx
- 清华大学:无线网和移动网(PPT课件讲稿)Mobile and wireless network.pptx
- 广西医科大学:《计算机网络 Computer Networking》课程教学资源(PPT课件讲稿)Chapter 02 Network Classification.pptx
- 《电脑组装与维护实例教程》教学资源(PPT课件讲稿)第5章 多媒体设备介绍及选购.ppt
- 《网络算法学》课程教学资源(PPT课件讲稿)第三章 实现原则.ppt
- 《数据结构》课程教学资源:实践教学大纲.doc
- 《数据结构》课程教学资源(PPT课件讲稿)第七章 图 Graph.ppt
- 四川大学:《操作系统 Operating System》课程教学资源(PPT课件讲稿)Chapter 3 Process Description and Control 3.4 Process Control 3.5 Execution of the Operating System 3.6 Unix SVR4 Process Management 3.7 Linux Process management system calls.ppt
- 大连理工大学:《计算机网络》课程教学资源(PPT课件讲稿)Chapter 2 应用层 application layer.ppt
- 3D Reconstruction from Images:Image-based Street-side City Modeling.ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第七章 图及其应用.ppt
- 香港城市大学:基序检测的随机化算法(PPT讲稿)Randomized Algorithm for Motif Detection.ppt
- 《计算机组装与维护》课程教学资源(PPT课件讲稿)第9章 BIOS设置(设置BIOS).ppt
- 《Introduction to Java Programming》课程PPT教学课件(Sixth Edition)Chapter 16 Applets and Multimedia.ppt
- 上海交通大学:《挖掘海量数据集 Mining Massive Datasets》课程教学资源(PPT讲稿)Lecture 06 搜索引擎 Search Engines.ppt
- 《计算机系统安全》课程教学资源(PPT课件讲稿)第二章 黑客常用的系统攻击方法.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第8章 结构体、共用体与枚举类型.ppt