数组和指针ppt课件.ppt

数组和指针ppt课件.ppt

ID:58726113

大小:89.00 KB

页数:61页

时间:2020-10-04

数组和指针ppt课件.ppt_第1页
数组和指针ppt课件.ppt_第2页
数组和指针ppt课件.ppt_第3页
数组和指针ppt课件.ppt_第4页
数组和指针ppt课件.ppt_第5页
资源描述:

《数组和指针ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章数组和指针5.1数组数组是一种复合数据类型,是相同类型元素的有序集合。在内存中,它占据一组连续的内存位置。数组的每一项称为一个元素,每个元素的存取是通过数组名加偏移来实现的。例如,程序中用到a、b、c、d、e、f等6个int变量,可用inta[6]数组来代替,提高程序的可读性。5.1.1数组定义和其他变量一样,在使用数组之前需要对数组进行定义。数组分为一维数组、二维数组和三维及以上的数组,我们通常把二维数组称为矩阵,三维及以上的数组称为多维数组。一维数组的定义格式如下:类型数组名[常量表达式];其中,“类型”指出数组

2、元素的数据类型,“数组名”指出数组的名称,“常量表达式”指出一维数组中存储的元素个数。例如,以下语句定义了一个具有10个元素的整型数组a:inta[10];对数组中某一个元素是通过数组名加下标访问的,也就是说,在数组名称后面的方括号内([])加入特定元素的位置编号,就可以应用这些元素中任何一个。如a[0]是数组的第一个元素,a[1]是数组的第二个元素,a[9]是数组的最后一个元素。注意,数组的下标是从0开始,因而一个具有n个元素的数组A,其有效元素为a[0]至a[n-1]。5.1.2数组初始化数组可在定义时初始化,其格式为

3、:类型数组名[数组范围]={值1,值2,…,值n};初始化值的个数可以小于或等于数组定义的元素个数,但不可以多于元素个数(这将导致语法错误),不足部分的数组元素系统自动以0值填充。如果在初始化数组的语句内忽略了数组大小,则数组元素个数就是初始化值的个数。以下初始化形式是合法的:inta[3]={1,2,3};//初始化三个数组元素inta[10]={4,5};//只初始化前两个元素,其他元素等于0inta[]={1,2,3,4};//数组大小由初始化值个数确定,//因而数组大小为4字符数组可以用多个字符或一个字符串初始化,

4、但是需要注意:字符串常量以空字符null(’’)结尾,因而也占据一个数组元素的位置。以下是一些字符串数组的例子:charca[]={’a’,’b’,’c’,’d’};//定义了大//小为4的字符数组charca[]=“abcd”;//定义了大小为5的字符//数组,注意字符串以´´结尾charca[4]=“abcd”;//错误,数组大小(4)小于//初始化值的个数(5)【例】以下能对一维数组a所有元素正确初始化的语句是。A.inta[20]={1,2,3,4,5};B.inta[30]={0};C.inta[]={1

5、};D.a[20]=(10);答:选项A和B只给部分元素置初值,选项D语法错误。本题答案为:C。5.1.3数组赋值C++不支持数组之间的直接赋值,因而只能一个一个元素地赋值。如要将一个大小为20的数组A赋给另一个同样大小的数组B,可以利用循环进行:for(i=0;i<20;i++)B[i]=A[i];字符串(字符数组)的赋值可以利用预定义的字符串操作函数如strcpy()等实现,例如:charstr[10];strcpy(str,"china");5.1.5二维数组二维数组也称为矩阵,需要两个下标才能标识某个元素的位置,二

6、维数组经常用来表示按行和按列格式存放信息的数值表。1.二维数组定义二维数组的定义与一维数组的定义相似,只是必须指定两个常量表达式。其格式如下:类型数组名[常量表达式1][常量表达式2];其中,“常量表达式1”指出二维数组的行数,“常量表达式2”指出二维数组的列数。尽管二维数组的元素逻辑上按行列方式排列,但在内存中仍然是顺序存放的,一般是按先行后列的顺序在内存中线性排列的。例如,定义如下数组:inta[2][3];该数组有2行3列,共6个元素。各元素在内存中的排列顺序如下:a[0][0],a[0][1],a[0][2],a[

7、1][0],a[1][1],a[1][2]数组a中的每个元素用元素名a[i][j]识别,其中,a是数组名,i和j是惟一标识数组a中每个元素的下标。2.二维数组初始化和一维数组一样,二维数组也能在定义时被初始化。例如,以下说明几个2×3的整型数组,并初始化:intb[2][3]={{1,2,3},{4,5,6}};//{1,2,3}赋给b数组第1行的各//元素,{4,5,6}赋给b数组第2行的各元素intc[2][3]={{1,2},{4,5}};//同样,{1,2}赋给c数组第1行//的前两列元素(c[0][2]=0),{

8、4,5}赋给//c数组第2行的前两列元素(c[1][2]=0)intd[2][3]={1,2,3,4,};//按行顺序依次赋给各元素,d[0][0]=1,//d[0][1]=2,d[0][2]=2,d[1][0]=4【例】若有说明:inta[4][5]={0};则下列叙述正确的是。A.只有元素a[0][

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。