Visual C++程序设计 教学课件 ppt 作者 第四章 数组

上传人:E**** 文档编号:89363085 上传时间:2019-05-24 格式:PPT 页数:51 大小:597.50KB
返回 下载 相关 举报
Visual C++程序设计 教学课件 ppt 作者 第四章 数组_第1页
第1页 / 共51页
Visual C++程序设计 教学课件 ppt 作者 第四章 数组_第2页
第2页 / 共51页
Visual C++程序设计 教学课件 ppt 作者 第四章 数组_第3页
第3页 / 共51页
Visual C++程序设计 教学课件 ppt 作者 第四章 数组_第4页
第4页 / 共51页
Visual C++程序设计 教学课件 ppt 作者 第四章 数组_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《Visual C++程序设计 教学课件 ppt 作者 第四章 数组》由会员分享,可在线阅读,更多相关《Visual C++程序设计 教学课件 ppt 作者 第四章 数组(51页珍藏版)》请在金锄头文库上搜索。

1、1,目录,4.1 一维数值数组 4.2 二位数值数组 4.3 字符数组和字符串 4.8 应用举例,2,4.1 一维数值数组,一、一维数值数组的定义 1.一维数组的定义格式 类型声明符 数组名 常量表达式1; 2.一维数组定义的说明 1)类型声明符是任一种基本数据类型、构造数据类型或者指针类型,声明数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。 2)数组名是用户定义的数组标识符,遵守标识符的命名规则,同一作用域内不允许数组与其它标识符同名。 3)方括号中的常量表达式n表示第n维下标的长度,即常量表达式1表示第一维下标的长度。各维下标均从0开始。,3,4.1 一维数值数组,一

2、、一维数值数组的定义 3.一维数组元素的存储 数组定义后就为数组中各元素在内存中分配了一片连续的存储单元,数组名就是这段连续存储单元的首地址。 4.数值数组定义的注意事项 1)在定义数组时,不能使用变量、函数或表达式,但可以使用直接常量、符号常量或常量表达式。 2)允许在同一个类型声明中,声明多个数组和变量。 3)数组中的元素必须是同一个类型,这个类型就是整个数组的类型。,4,4.1 一维数值数组,二、一维数值数组的初始化 1. 初始化赋值的一般格式 类型声明符 数组名常量表达式=值,值值; 其中在 中用逗号分隔的各数据值即为各元素的初值。 2.数组的初始化赋值的规定 1)可以只给部分元素赋初

3、值。 当 中值的个数少于元素个数时,只给前面部分元素赋值,而后面剩余元素由系统自动赋0值。 2)只能给元素逐个赋值,不能给数组整体赋值。 3)如果给全部元素赋值,则在数组定义中,可以不给出数组元素的个数。,5,4.1 一维数值数组,三、一维数值数组元素的使用 1.数组元素的下标表示 数组元素标识方法为数组名后跟下标,下标表示了元素在数组中的顺序。数组元素通常也称为下标变量。 1)数组元素的表示形式 一维数组元素称为单下标变量,其表示形式为:数组名下标,6,4.1 一维数值数组,三、一维数值数组元素的使用 1.数组元素的下标表示 2)使用数组元素注意事项 (1)数组定义的方括号中给出的是某一维的

4、长度;而数组元素中的下标是该元素在数组中的位置标识。 (2)定义时下标只能是常量,使用时下标可以是常量,变量或表达式。 (3)使用数组元素时,数组名、类型和维数必须与定义数组时一致。 (4)使用数组元素时,下标值应该在建立数组时所指定的范围内。即下标不能小于0,也不能大于或等于数组定义时的下标。,7,4.1 一维数值数组,三、一维数值数组元素的使用 2.数组元素的赋值 对数值数组不能用赋值语句整体赋值、输入或输出,而必须对数组元素逐个操作。 1)用赋值语句为单个元素赋值 2)通过单重循环语句为一维数组的多个元素赋值 3)可以在程序执行过程中对数组作动态赋值 通过单重循环语句逐个对一维数组的多个

5、元素赋值。 3.数组元素的输出 数组元素的输出可以通过单重循环语句来实现。,8,4.1 一维数值数组,3.元素的输出 【例4_1】 #include void main() int i,a5; for(i=0;i=0;i-) coutai ; coutendl; ,9,4.2 二维数值数组,一、二维数值数组的定义 1.二维数组的定义格式 类型声明符 数组名 常量表达式1 常量表达式2; 2.二维数组定义的说明 方括号中的常量表达式n表示第n维下标的长度,即常量表达式1表示第一维下标的长度,常量表达式2表示第一维下标的长度。各维下标均从0开始。 3.二维数组元素的存储 数组定义后就为数组中各元素

6、在内存中分配了一片连续的存储单元,在一维存储器中存放二维数组,按行排列,即放完一行之后顺次放入第二行。数组名就是这段连续存储单元的首地址。,10,4.1 二维数值数组,二、二维数值数组的初始化 1.二维数组可按行分段赋值,也可按行连续赋值 1)按行分段赋值 int a53=80,75,92,61,65,71,59,63,70, 85,87,90,76,77,85; 2)按行连续赋值 int a53=80,75,92,61,65,71,59,63,70, 85,87,90,76,77,85; 这两种赋初值的结果是完全相同的。,11,4.1 二维数值数组,二、二维数值数组的初始化 2.二维数组初始

7、化赋值注意事项 1)可以只对部分元素赋初值,未赋初值的元素自动取0值。 int a33=0,1,0,0,2,3; 2)如对全部元素赋初值,则第一维的长度可以不给。 int a3=1,2,3,4,5,6,7,8,9 3)二维数组可以看作是由一维数组的嵌套而构成的。一维数组的每个元素又是一个数组,组成二维数组。当然,前提是各元素类型必须相同。亦即,一个二维数组也可以分解为多个一维数组。,12,4.1 一维数值数组,三、二维数值数组元素的使用 1.数组元素的表示形式 数组元素标识方法为数组名后跟下标,下标表示了元素在数组中的顺序。数组元素通常也称为下标变量。 1)数组元素的表示形式 二维数组元素称为

8、双下标变量,其表示形式为:数组名下标 下标,13,4.1 一维数值数组,三、二维数值数组元素的使用 1.数组元素的表示形式 2)使用数组元素注意事项 (1)数组定义的方括号中给出的是某一维的长度;而数组元素中的下标是该元素在数组中的位置标识。 (2)定义时下标只能是常量,使用时下标可以是常量,变量或表达式。 (3)使用数组元素时,数组名、类型和维数必须与定义数组时一致。 (4)使用数组元素时,下标值应该在建立数组时所指定的范围内。即下标不能小于0,也不能大于或等于数组定义时的下标。,14,4.1 一维数值数组,三、二维数值数组元素的使用 2.数组元素的赋值 对数值数组不能用赋值语句整体赋值、输

9、入或输出,而必须对数组元素逐个操作。 1)用赋值语句为单个元素赋值 2)通双重循环语句为二维数组的多个元素赋值 3)可以在程序执行过程中对数组作动态赋值 通过双重循环语句逐个对二维数组的多个元素赋值。 3.数组元素的输出 数组元素的输出可以通过双重循环语句来实现。,15,4.1 一维数值数组,三、二维数值数组元素的使用 例4_2 输入两个矩阵A,B的值,求C=A+B,并显示结果。 A= B= 分析: (1)数据的输入/输出问题。矩阵各元素的输入可通过空格和回车符控制,内循环不换行,出内循环输出endl换行控制符。 (2)矩阵相加,实质就是对应位置元素相加。,16,4.1 一维数值数组,三、二维

10、数值数组元素的使用 #include #include void main() int a33,b33,c33,i,j; coutaij; coutbij;,17,4.1 一维数值数组,三、二维数值数组元素的使用 for(i=0;i3;i+) for(j=0;j3;j+) cij=aij+bij; cout“输出C=A+B矩阵的结果“endl; for(i=0;i3;i+) for(j=0;j3;j+) coutsetw(5)cij; coutendl; ,18,4.3 字符数组和字符串,1.字符数组的定义 用于存放字符数据的数组就是字符数组。一维字符数组可以存放若干个字符也可以存放一个字符串

11、;对于存放一组相关的字符串,则通过二维字符数组实现。例如:char c10; 表示定义了一个一维字符型数组c10,它有10个元素,占用10个字节的连续空间。 它最多可以放10个字符,但最多可放有9个字符组成的字符串。字符数组中放的是字符还是字符串,两者最大的区别是字符串有“0”结束标记。 字符串总是以0作为串的结束符。因此当把一个字符串存入一个数组时,也把结束符0存入数组,并以此作为该字符串是否结束的标志。有了0标志后,就不必再用字符数组的长度来判断字符串的长度了。,19,4.3 字符数组和字符串,2.字符数组的初始化 在定义一个字符数组时可以给它指定初值,有两种初始化方法: 1)逐个给数组中

12、各个元素指定初值字符 例如: char c9=c, ,p,r,o,g,r,a,m; 字符数组中放的是字符,不存储串结束标记“0”。 在对全部元素指定了初值的情况下,字符数组的大小可以不必定义,即可写为: char c=c, ,p,r,o,g,r,a,m;,20,4.3 字符数组和字符串,2.字符数组的初始化 2)利用字符串初始化字符数组 例如: char c=“c program“; 也可省略字符串常量外面的花括号,写为: char c=“c program“; 用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志0。,21,4.3 字符数组和字符串,2.字符数组的初始化 3

13、)注意事项 单个字符用单撇号括起来,而字符串用双撇号括起来,在指定字符串初值的情况下,将字符串中各个字符逐个顺序的赋给字符数组中各元素,但有一点要注意:对于字符串,系统将自动在最后一个字符的后面加入一个“0”字符。 对于字符串的初始化,要注意数组实际分配的空间大小是字符串中字符个数加上末尾的0结束符。,22,4.3 字符数组和字符串,3.字符数组的使用 1)存若干个字符 (1)通过循环来逐一读入字符 for(i=0;iai; (2)通过循环来逐一读出字符 for(i=0;i10,i+) coutai;,23,4.3 字符数组和字符串,3.字符数组的使用 2)存一个字符串 允许在提取或插入操作符

14、后面使用一个字符数组名实现向数组中输入字符串或输出数组中保存的字符串的目的。 (1)通过cina;或gets(a);读入字符串 使用cin时,要求用户从键盘输入一个不含空格的字符串,用空格、TAB或回车键作为字符串输入的结束符,系统就把该字符串存入到字符数组a中,当然,在整个字符串的后面将自动存入一个结束符0。,24,4.3 字符数组和字符串,3.字符数组的使用 2)存一个字符串 (2)通过cout。gets输入时只有回车符是输入结束符。 (3)注意事项 对于字符和字符串处理的不同方式。,25,4.3 字符数组和字符串,3.字符数组的使用 例4_3 定义一个字符数组,顺序放入26个小写英文字母

15、并显示,程序如下: #include void main() char s26; int i; for(i=0;i26;i+)si=a+i; for(i=0;i26;i+)coutsi; coutendl; ,26,4.3 字符数组和字符串,3.字符数组的使用 例4_4 统计输入字符串长度,程序如下: #include #include void main() char s2100; int i=0; gets(s2); /输入字符串可有空格 while(s2i!=0)i+; couts2“的长度为“i; coutendl; ,27,4.3 字符数组和字符串,4.字符串处理函数 1)字符串输出函数puts() (1)格式:puts(字符数组名) (2)功能:在屏幕上显示字符串。 【例4_5】puts函数应用。 #include #include void main() int i=0; char s=“java2n“; while(si!=0) coutsi+; couts; puts(s); ,28,4.3 字符数组和字符串,3.字符串处理函数 2)字符串输入函数gets() (1)格式:gets(字符数组名) (2)功能:从标准输入设备键盘上输入一个字符串。本函数得到一个函数值,即为该字

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号