第04章C数组与指针.ppt
《第04章C数组与指针.ppt》由会员分享,可在线阅读,更多相关《第04章C数组与指针.ppt(15页珍藏版)》请在第壹文秘上搜索。
1、1第四章第四章 数组与指针数组与指针 4.1 4.1 数组的概念与声明数组的概念与声明 4.1.1 4.1.1 数组的概念数组的概念 数组是一个由类型相同的变量组成的线性序列。概念上,它如数组是一个由类型相同的变量组成的线性序列。概念上,它如同代数中的向量:同代数中的向量:(a1,a2,.,an)。4.1.2 4.1.2 数组的声明数组的声明 与简单变量一样,在使用前必须声明之。其声明形式如下:与简单变量一样,在使用前必须声明之。其声明形式如下:int a10;/声明声明 a 是一个长度为是一个长度为10的整型数组,的整型数组,a是数组名;是数组名;数组数组a中元素的变量名以及它们的存储空间情
2、况,如下所示:中元素的变量名以及它们的存储空间情况,如下所示:2说明:说明:(1 1)数组中各元素的下标是从)数组中各元素的下标是从0 n-1。即它们的变量名依次为:。即它们的变量名依次为:通常,它们也被称为通常,它们也被称为“下标变量下标变量”。(2 2)数组中各元素所占用的存储单元,它们的地址是连续的(即地)数组中各元素所占用的存储单元,它们的地址是连续的(即地址相邻)。如下所示:址相邻)。如下所示:变量名:变量名:地地 址:址:34.1.3 4.1.3 数组的初始化数组的初始化 是指:在数组声明时为其中所有的下标变量赋值。是指:在数组声明时为其中所有的下标变量赋值。int a10=1,2
3、,3,4,5,6,7,8,9,10;int a10=1,2,3,4,5,6,7,8,9,10;说明:说明:初始化的几种形式(参见初始化的几种形式(参见P.75P.75)44.1.4 4.1.4 下标变量的引用下标变量的引用 下标变量可以像简单变量一样地被使用下标变量可以像简单变量一样地被使用,而且而且元素的下标可以是元素的下标可以是常量、变量、表达式。常量、变量、表达式。例如:例如:ai=ai-1+1;cinai;coutai;等等。等等。注意:注意:引用数组名将表示对数组进行整体操作,除非作为引用数组名将表示对数组进行整体操作,除非作为函数的参数或字符串时,否则,其他情况下,必须以引函数的参
4、数或字符串时,否则,其他情况下,必须以引用下标变量的方式来处理数组(如:赋值、输入、输出用下标变量的方式来处理数组(如:赋值、输入、输出等等操作)。等等操作)。54.1.5 4.1.5 数组的基本操作数组的基本操作参见参见P.76P.76(1 1)数组元素的输入)数组元素的输入(2 2)数组元素的输出)数组元素的输出(3 3)数组元素的求和)数组元素的求和(4 4)求数组中的最小(大)元素的值)求数组中的最小(大)元素的值 (5)求数组中的最小(大)元素的下标)求数组中的最小(大)元素的下标 64.1.6 4.1.6 数组的应用数组的应用 数组主要用于存放并且处理一组类型相同的数据。数组主要用
5、于存放并且处理一组类型相同的数据。如:排序、检索等操作。如:排序、检索等操作。参见参见P.77/P.77/【例】【例】4.34.3、4.4;4.4;P.95/P.95/【例】【例】4.13-4.14;4.13-4.14;7例例4-1 一维数组的排序一维数组的排序(非递减非递减)。void main()int a=79,97,68,77,89,84,62,55,78,98,79,67,85,71,65,80,100;int i,j,k,x,temp,len;len=sizeof(a)/sizeof(int);for(i=0;ilen-1;i+)/该排序法被称为该排序法被称为“选择排序选择排序”法
6、法x=ai;k=i;for(j=i+1;jx)x=aj;k=j;temp=ai;/ai与与ak交换值交换值ai=ak;ak=temp;for(i=0;ilen;i+)cout a it;sizeof是运算符,其语法形式:是运算符,其语法形式:sizeof(数组名或变量名或类型名数组名或变量名或类型名)运算结果为该数组或变量或类型所占运算结果为该数组或变量或类型所占内存的字节数。内存的字节数。8例例4-2 对一对一批批学生的百分制成绩,统计出学生的百分制成绩,统计出其中其中100分、分、9099分、分、8089分、分、09分的人数。分的人数。#define NUM 20void main()in
7、t scoreNUM;/声明成绩数组声明成绩数组scoreint counter11;/声明声明计数器计数器数组数组counterint i;srand(unsigned)time(NULL);for(i=0;iNUM;i+)scorei=(int)(rand()%101);/利用随机函数产生成绩利用随机函数产生成绩for(i=0;i11;i+)counteri=0;/计数器数组计数器数组counter置置0for(i=0;iNUM;i+)counter scorei/10+;/利用利用counter数组数组计数计数for(i=0;i11;i+)if(i!=10)cout(i*10)-(i*1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 04 数组 指针