C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.

Slides:



Advertisements
Similar presentations
简单数组 程序设计导论. 2 学习目标 数组的概念、定义和初始化 数组的概念、定义和初始化 二维数组 二维数组 数组的排序问题 数组的排序问题 筛法求素数 筛法求素数.
Advertisements

只怕有心人只怕有心人 世上无难事世上无难事 浙江长征职业技术学院 — 计算机与信息技术系 — 相方莉制作.
第二章 Java基本语法.
第5章 数组 5.1数组的基本概念 5.2静态数组与动态数组 5.3数组的基本操作 5.4综合应用程序举例.
第七章 指针 计算机公共教学部.
§1 二阶与三阶行列式 ★二元线性方程组与二阶行列式 ★三阶行列式
一、二阶行列式的引入 用消元法解二元线性方程组. 一、二阶行列式的引入 用消元法解二元线性方程组.
C程序设计 第6章 数 组 主讲教师: 鲁 萍 西安建筑科技大学 理学院 任务:键盘输入整数,排序.
二级指针与二维数组.
C语言程序设计基础 第10章 指针进阶 刘新国.
第6章 数组 公共计算机基础教研部.
第一章 行列式 第五节 Cramer定理 设含有n 个未知量的n个方程构成的线性方程组为 (Ⅰ) 由未知数的系数组成的n阶行列式
一维数组 乾坤以有亲可久; 君子以厚德载物。.
C语言程序设计.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
第九章 字符串.
第5讲 数组 5.1 一维数组 5.2 二维数组 5.3 字符串数组 5.4 综合案例分析.
第九章 结构体 主讲教师 :贾月乐 电话:
VB程序设计语言 主讲教师:王 杨.
C语言高级编程(第四部分) 字符串 北京大学 信息科学技术学院.
第7章 构造数据类型 构造数据类型:数组、结构体、共用体、用户自定义类型 7.1 数组
第6章 利用数组处理批量数据.
在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。
走进编程 程序的顺序结构(二).
元素替换法 ——行列式按行(列)展开(推论)
二维数组的指针表示 与复杂的指针例子 专题研讨课之三.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
第六单元 应用数组的程序设计 从现在开始,将详细讲述C语言的方方面面。第一章中的所有疑惑,都将一一消灭。
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
第二章 Java语言基础.
第6章 数 组 本章要点: 数组的定义、初始化、数组元素的引用 字符数组的输入输出 字符串处理函数 数组的应用 学习方法建议:
第四章 数组 4.4.1一维数组的定义和初始化 一、一维数组的定义和初始化 1.一维数组定义 定义格式:类型 数组名[常量表达式];
第五章 习题课 电子信息与计算机科学系 曾庆尚.
第七章 操作符重载 胡昊 南京大学计算机系软件所.
第五章 数组 数组 一维数组 二维数组 主讲:李祥 时间:2015年10月.
第六章 数组 西安工程大学.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
第5讲 数组 5.1 一维数组 5.2 二维数组 5.3 字符串数组 5.4 综合案例分析.
1.3 C语言的语句和关键字 一、C语言的语句 与其它高级语言一样,C语言也是利用函数体中的可执行 语句,向计算机系统发出操作命令。按照语句功能或构成的不 同,可将C语言的语句分为五类。 goto, return.
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
第七章 数组.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
第4章 数组 本章导读 本章主要知识点 《 C语言程序设计》 (Visual C++ 6.0环境)
线 性 代 数 厦门大学线性代数教学组 2019年4月24日6时8分 / 45.
第二章 Java基本语法 讲师:复凡.
第六章 数组.
第6讲 指针与引用 6.1 指针 6.2 引用.
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
第5章 数组 5.1 数组的概念 5.2 一维数组的定义和引用 5.3 二维数组的定义和引用 5.4 用数组名作函数参数 5.5 字符数组
第6章 数组.
第4章 Excel电子表格制作软件 4.4 函数(一).
C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.
第九节 赋值运算符和赋值表达式.
3.16 枚举算法及其程序实现 ——数组的作用.
本节内容 结构体 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第五章 数组与指针 1 数组的简单操作 2 数组与指针 3 字符数组与字符串 4 字符串处理函数 5 数组应用举例.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
ASP.NET实用教程 清华大学出版社 第4章 C#编程语言 教学目标 教学重点 教学过程 2019年5月5日.
C++语言程序设计 C++语言程序设计 第六章 指针和引用 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第八章 继承 C++语言程序设计.
2.6 字符型数据 一、 字符常量 1、字符常量的定义 用一对单引号括起来的单个字符,称为字符常量。 例如,‘A’、‘1’、‘+’等。
本节内容 结构体.
§2 方阵的特征值与特征向量.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
基本知识 数据类型、变量、常量、运算符.
§4.5 最大公因式的矩阵求法( Ⅱ ).
Presentation transcript:

C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计

“ 目录 C++语言程序设计 基本知识 编程技能 刨根问底 字符数组输入输出 数组 字符数组与字符串 多维数组在内存中的映像 枚举类型 枚举类型内存空间 结构类型内存空间 数组 枚举类型 结构类型 联合类型 字符数组与字符串 多维数组 冒泡排序 结构数组 C++语言程序设计

4.1 数组 字符数组 定义并且初始化字符数组: char型的数组称为字符数组,通常用来存储字符串。   char chArray[] = "hello world!"; C++语言程序设计

4.1 数组 初始化字符数组 两种方法: (1)用双引号内的字符串初始化字符数组 例:char array[10]={"hello"}; 可以省略大括号,简化为: char array[10]= "hello"; 用这种方法初始化时,系统自动在数组最后一个元素后面补'\0'(结束符)。 C++语言程序设计

4.1 数组 (2)用字符常量来初始化字符数组 例: char array[10]={ 'h', 'e', 'l', 'l', 'o', '\0'}; 该方法将初始值一一列举在初始化列表中,这种方法通常用于输入不容易在键盘上生成的不可见字符。 例:下面的代码中初始化值包含两个制表符。 char array[10]={ '\a', ' \t', ' \b', ' \t', '\0'}; 此种方式下,编程者要自己添加字符串结束符('\0'),同时不要忘记为最后的'\0'留出空间。 C++语言程序设计

4.1 数组 字符数组的赋值有两种方法 (1)一个字符一个字符赋值数组元素 (2)用C的库函数strcpy(字符数组1,字符串2) 例: char array[10]; array[0]= ‘h’; (2)用C的库函数strcpy(字符数组1,字符串2) 例:char str1[10]=” “, str2[]=”hello”; strcpy(str1, str2); 或 strcpy(str1, ”hello”); 不能用赋值语句将一个字符串常量或字符数组直接给字符数组赋值。 str1=”hello”; //错!!!因为数组名是地址常量 C++语言程序设计

4.1 数组 多维数组的定义 定义多维数组语法形式如下: 二维数组 三维数组 n维数组 C++语言程序设计 类型标识符 数组名标识符[常量表达式1][常量表达式2]; 三维数组 类型标识符 数组名标识符[常量表达式1][常量表达式2][常量表达式3]; n维数组 类型标识符 数组名标识符[常量表达式1]…[常量表达式n]; C++语言程序设计

4.1 数组 例: bool seat[10][6]; //座位   unsigned char image[256][128];//256行128列图像   float matrix[3][3];//三元一次线性方程组的系数矩阵   char table[5][8]; //课表 二维数组元素的下标从左至右称为行、列。   char book[200][32][40]; //书 三维数组元素的下标由左至右可称为页、行、列或层、行、列。 C++语言程序设计

特别强调:数组每一维的大小必须用常量表达式声明,否则,编译会出错。这也是C和C++数组的一大缺陷:数组的使用不够灵活。 4.1 数组 在定义多维数组时,需要注意 首先要根据所要表示的对象内容,选择合适的数据类型(数组的类型,也就是数组元素的类型); 其次确定数组的维数,即几维数组(有几维就有几对中括号); 最后确定每一维的大小(中括号内)。 特别强调:数组每一维的大小必须用常量表达式声明,否则,编译会出错。这也是C和C++数组的一大缺陷:数组的使用不够灵活。 C++语言程序设计

4.1 数组 初始化多维数组 提供数组元素的全部初始值 提供部分元素的初始值 这些初始化值位于大括号内,构成初始值列表,多维数组初始化时需要使用嵌套的括号。 int a[2][4]={{4, 3, 2, 1}, {1,2,3,4}};   double d[3][4]={{l.0, 2.0, 3.0, 4.0}, {5.0, 6.0, 7.0, 8.0}, {9.0, 10.0, 11.0, 12.0}}; C++语言程序设计

4.1 数组 初始化多维数组 可以省略内层的括号,只要程序好读即可。 例如用换行的方式:   int a[2][4]={ 4, 3, 2, 1, 1, 2, 3, 4 };   double d[3][4]={ 1.0, 2.0, 3.0, 4.0,   5.0, 6.0, 7.0, 8.0,   9.0, 10.0, 11.0, 12.0}; C++语言程序设计

4.1 数组 初始化多维数组 多维数组的初始化,也可以只给出部分值; 例: int a[2][4]={ 4, 3}; 则只有a[0][0]、a[0][1]分别得到初始值4和3,其余各元素的值为0。 可利用此特性将一些用做计数器的多维数组初始化为0。 例:定义并初始化二维整型计数器counts: int counts[512][256] = {0}; 这是将多维数组元素置0的最简便方法之一。 C++语言程序设计

4.1 数组 访问多维数组的元素 访问多维数组的元素时,只要指定要访问的数组元素的具体下标值即可,语法形式为: 数组名[下标表达式1]…[下标表达式n] 其中,下标表达式的个数同数组维数,“下标表达式i”(1≤i≤n)可以用常量、变量或表达式,其值大于或等于0,小于数组对应维的大小,即 0≤下标表达式i的值<第i维的大小 C++语言程序设计

4.1 数组 定义并访问数组元素 const int M = 8, N = 4; char matrix[M][N]; for (int i=0; i<M; i++) { for (int j=0; j<N; j++) cin>>matrix[i][j]; //给元素赋值,写操作 } C++语言程序设计