1 / 130
文档名称:

c 第五讲 数组与指针.ppt

格式:ppt   大小:1,055KB   页数:130页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c 第五讲 数组与指针.ppt

上传人:zbfc1172 2018/6/18 文件大小:1.03 MB

下载得到文件列表

c 第五讲 数组与指针.ppt

相关文档

文档介绍

文档介绍:第五章数组与指针
主讲人:XXX
电子邮件:
联系电话:
本章将深入学****数组包括多维数组的知识和应用,以及它们与指针的关系。
C++语言拥有在运行时获得变量地址和操纵地址的能力,这种可用来操纵地址的变量类型就是指针。
指针可以用于数组,用于内存访问,还可作为函数的参数。
本章重点
2018/6/19
2
计算机基础教研室
数组、数组元素及其存储方式
数组名作为函数参数
数组
2018/6/19
3
计算机基础教研室
数组的引入:
数组(array)是一种顺序容器(sequence container),是由单一类型元素组成的一个有序集合:
int fibon[10] = {0,1,1,2,3,5,8,13,21,34};
数组名为fibon,这是一个包含10个元素的整型一维(dimension)数组,其第一个元素为fibon[0],存放0,最后一个元素为fibon[9],存放34。
数组
2018/6/19
4
计算机基础教研室
0
1
2
3
21
34
fibon[0]
fibon[1]
fibon[2]
fibon[3]
fibon[8]
fibon[9]
数组在内存中的存储
数组元素的访问方式:
通过下标操作符(subscript),按元素在数组中的位置进行访问,称为索引访问(indexing)或下标访问(subscripting)。 。
数组与数组元素及其存储方式
2018/6/19
5
计算机基础教研室
注意:
    1: 数组是一种组合类型,是不能作为一个整体进行访问和处理的,只能按元素进行个别的访问和处理。
   2:  C++数组第一个元素的下标为0,而不是1,且下标表达方式是固定的。
    3:数组元素在内存中是从低地址开始顺序排列,各元素的存储单元占用内存大小相同,各元素的存储单元之间没有空隙,可以从数组第一个元素存储单元的起始地址计算出任意一个元素存储单元的起始地址。
数组与数组元素及其存储方式
2018/6/19
6
计算机基础教研室
【例 】找最大数和最小数
const int SIZE=15;
 int main(){
int arr[SIZE], i,high,low;
for (i=0;i<SIZE;i++) arr[i]=rand()%100;
cout << "Here are the " <<SIZE
<<" random numbers :"<<endl;
for (i=0;i<SIZE;i++) cout<<arr[i]<<'\t';
cout<<endl;
high=arr[0]; //初始化时最大和最小值均为数组首元素
low=arr[0];
for(i=1;i<SIZE;i++){if(arr[i]>high) high=arr[i];
if(arr[i]<low) low=arr[i]; }
cout<<"highest value is "<<high<<endl;
cout<<"lowest value is "<<low<<endl;
return 0;}
2018/6/19
7
计算机基础教研室
结构数组定义:
struct keyword
{
char word[16]; //关键字
int count; //该关键字将在源程序中出现的次数
};
初始化:
结构数组初始化时可以用括号来区分每一个结构,例如:
keyword keytab[]={{"auto", 0},{"break", 0},{"case", 0},
……};
当提供了数组中所有结构值时,不必用这种括号的形式。
keyword keytab[]={"auto", 0,"break", 0,"case", 0,"char", 0,
……"unsigned", 0,"volatile", 0,"while", 0,};
数组与数组元素及其存储方式
2018/6/19
8
计算机基础教研室
对象数组定义:
CGoods goods[3];
该商品类对象数组包含3个商品对象数组元素,系统调用3次默认的构造函数来建立这3个商品对象数组元素。
初始化:
应该完整书写各个元素的构造函数及成员数据初值:
CGoods goods[3]={
CGoods("夏利2000",30,),
//调用三参数构造函数,初始化goods[0]
CGoods("桑塔纳2000",),
//调用两参数构造函数,初始化goods[1]
CGoods() //调用默认的构造函数,初始