当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

上海交通大学:《程序设计基础》课程教学资源(PPT课件讲稿)第7章 数组

资源类别:文库,文档格式:PPT,文档页数:87,文件大小:354.5KB,团购合买
一维数组 字符串 数组作为参数 排序和查找 二维数组 Vector类
点击下载完整版文档(PPT)

《程序设计》2006.9 第7章数组 一维数组 字符串 数组作为参数 ?排序和查找 二维数组 Vectorz类 程序设计-1

《程序设计》 2006.9 程序设计 - 1 v 一维数组 v 字符串 v 数组作为参数 v 排序和查找 v 二维数组 v Vector类

《程序设计》2006.9 一维数组 有时,我们需要存储一批同类型的数据, 如有十只羊,主人要挑选一只最肥的羊。 解决方案:可以定义十个double型的变 量sheepl,,sheep10,然后比较十个值 找出一个最大值。 缺点: >定义了十个变量。要是有100只羊就要定义 100个变量 >程序只能用顺序结构 >如果羊群规模发生变化,程序就得重写 程序设计-2

《程序设计》 2006.9 程序设计 - 2 v 有时,我们需要存储一批同类型的数据, 如有十只羊,主人要挑选一只最肥的羊。 v 解决方案:可以定义十个double型的变 量sheep1, …,sheep10,然后比较十个值, 找出一个最大值。 v 缺点: Ø 定义了十个变量。要是有100只羊就要定义 100个变量 Ø 程序只能用顺序结构 Ø 如果羊群规模发生变化,程序就得重写

《程序设计》2006.9 数组 数组是一组同类元素,它有两个特征: >数组元素是有序的 >数组元素是同类的 定义数组要定义三个基本内容: >数组名字 >数组元素的类型 >数组的大小 程序设计-3

《程序设计》 2006.9 程序设计 - 3 v 数组是一组同类元素,它有两个特征: Ø 数组元素是有序的 Ø 数组元素是同类的 v 定义数组要定义三个基本内容: Ø 数组名字 Ø 数组元素的类型 Ø 数组的大小

《程序设计》2006.9 数组的定义 格式: 类型数组名元素个数]; 其中,元素个数必须是常量。如: int intarray 10]; 但intn=10; int intarray n;是错的 常用的方法是将元素个数定义为一个常量。如: #define NumOfElement 10 int intarray[NumOfElement];相当于 int intarray[10]; 程序设计-4

《程序设计》 2006.9 程序设计 - 4 v 格式: 类型 数组名[元素个数]; 其中,元素个数必须是常量。如: int intarray[10]; 但 int n=10; int intarray[n]; 是错的 v 常用的方法是将元素个数定义为一个常量。如: #define NumOfElement 10 int intarray[NumOfElement]; 相当于 int intarray[10];

初始化 《程序设计》2006.9 初始化表 声明数组时可以对数组初始化 f1oatx5]={-1.1,0.2,33.0,4.4,5.05}; 初始化表的长度短于要被初始化的数组元 素数目,那么剩余元素被初始化为0 带有初始化的数组可以不定义长度 int a={1,2,3,4,5;则默认数组大小为5 程序设计-5

《程序设计》 2006.9 程序设计 - 5 v 声明数组时可以对数组初始化 float x[5] = { -1.1, 0.2, 33.0, 4.4, 5.05 }; v 初始化表的长度短于要被初始化的数组元 素数目,那么剩余元素被初始化为0。 v 带有初始化的数组可以不定义长度 int a[]={1,2,3,4,5}; 则默认数组大小为5 初始化表

《程序设计》2006.9 数组元素 数组元素的使用是通过数组名及元素的 序号来指定,如intarray2]。当数组的 大小为n时,元素的序号为0-n-1。 冬元素的序号称为下标。程序中,下标可 为整数、整型变量或结果为整型的任意 表达式 程序设计-6

《程序设计》 2006.9 程序设计 - 6 v 数组元素的使用是通过数组名及元素的 序号来指定,如intarray[2]。当数组的 大小为n时,元素的序号为0 – n-1。 v 元素的序号称为下标。程序中,下标可 为整数、整型变量或结果为整型的任意 表达式

《程序设计》2006.9 数组在内存中 定义数组就是定义了一块连续的空间, 空间的大小等于元素数*每个元素所 占的空间大小。 数组元素按序存放在这块空间中。 程序设计-7

《程序设计》 2006.9 程序设计 - 7 v 定义数组就是定义了一块连续的空间, 空间的大小等于元素数*每个元素所 占的空间大小。 v 数组元素按序存放在这块空间中

《程序设计》2006.9 为数组分配空间 如:int intarray5占用了20个字节,因为 每个整型数占四个字节。如给ntarray3]赋值 为3,如果这块空间的起始地址为100,那么 在内存中的情况是: 随机值 随机值 随机值 3 随机值 100 104 108 112 116 103 107 111 115 119 当你引用变量intarray idx]时,系统计算它的 地址100+idx*4,对该地址的内容进行操作。 程序设计-8

《程序设计》 2006.9 程序设计 - 8 v 如: int intarray[5];占用了20个字节,因为 每个整型数占四个字节。如给intarray[3]赋值 为3,如果这块空间的起始地址为100,那么 在内存中的情况是: v 当你引用变量intarray[idx]时,系统计算它的 地址100+idx*4,对该地址的内容进行操作。 随机值 随机值 随机值 3 随机值 100 103 104 107 108 111 112 115 116 119

《程序设计》2006.9 数组下标超界问题 C语言不检查数组下标的超界。如定义数组 int intarray[.10];合法的下标范围是0-9,但 如果你引用intarray[10],系统不会报错。如 数组intarray的起始地址是1000,则引用 intarray10],则系统对1040号内存进行操作。 而1040可能是另一个变量的地址 解决方法:由程序员自己控制。在对下标变 量进行操作前,先检查下标的合法性。 程序设计-9

《程序设计》 2006.9 程序设计 - 9 v C语言不检查数组下标的超界。如定义数组 int intarray[10]; 合法的下标范围是0 – 9,但 如果你引用intarray[10],系统不会报错。如 数组intarray 的起始地址是1000,则引用 intarray[10],则系统对1040号内存进行操作。 而1040可能是另一个变量的地址 v 解决方法:由程序员自己控制。在对下标变 量进行操作前,先检查下标的合法性

数组的操作 《程序设计》2006.9 ,数组的操作主要是数组元素的操作。 不能直接对数组名进行赋值。如:intarray=30 是错的。事实上,数组名中存放的是该数组的 起始地址。 eg.数组的输入输出 main() {int intarray[10],idx; for (idx =0;idx intarray idx] cout <endl; for idx =0;idx <=9;++idx) cout <intarray idx]; 程序设计-10

《程序设计》 2006.9 程序设计 - 10 v 数组的操作主要是数组元素的操作。 v 不能直接对数组名进行赋值。如:intarray=30 是错的。事实上,数组名中存放的是该数组的 起始地址。 v eg. 数组的输入输出 main() {int intarray[10], idx; for (idx = 0; idx > intarray[idx] ; cout << endl; for ( idx = 0; idx <= 9; ++idx) cout << intarray[idx]; }

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共87页,可试读20页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有