资源描述:
《计算机语言C++ 第6章 数组 指针与字符串课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章数组指针与字符串C++语言程序设计1本章主要内容数组指针动态存储分配指针与数组指针与函数字符串2数组的概念数组是具有一定顺序关系的若干相同类型变量的集合体,组成数组的变量称为该数组的元素。数组属于构造类型。数组3一维数组的声明与引用一维数组的声明类型说明符数组名[常量表达式];例如:inta[10];表示a为整型数组,有10个元素:a[0]...a[9]引用必须先声明,后使用。只能逐个引用数组元素,而不能一次引用整个数组例如:a[0]=a[5]+a[7]-a[2*3]数组名的构成方法与一般变量名相同。数组4例6.1一维数组
2、的声明与引用#includeusingnamespacestd;voidmain(){intA[10],B[10];inti;for(i=0;i<10;i++){A[i]=i*2-1;B[10-i-1]=A[i];}数组for(i=0;i<10;i++){cout<<"A["<3、的内存地址。数组名是一个常量,不能被赋值。a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]a数组6一维数组的初始化可以在编译阶段使数组得到初值:在声明数组时对数组元素赋以初值。例如:staticinta[10]={0,1,2,3,4,5,6,7,8,9};可以只给一部分元素赋初值。例如:staticinta[10]={0,1,2,3,4};在对全部数组元素赋初值时,可以不指定数组长度。例如:staticinta[]={1,2,3,4,5}数组7#includeusingnames
4、pacestd;voidmain(){inti;staticintf[20]={1,1};//初始化第0、1个数for(i=2;i<20;i++)f[i]=f[i-2]+f[i-1];//求第2~19个数for(i=0;i<20;i++)//输出,每行5个数//{if(i%5==0)cout<5、1098715972584418167659二维数组的声明及引用数据类型标识符[常量表达式1][常量表达式2]…;例:inta[5][3];表示a为整型二维数组,其中第一维有5个下标(0~4),第二维有3个下标(0~2),数组的元素个数为15,可以用于存放5行3列的整型数据表格。数组10存储顺序按行存放,上例中数组a的存储顺序为:二维数组的声明类型说明符数组名[常量表达式][常量表达式]例如:floata[3][4];a00a01a02a03a10a11a12a13a20a21a22a23a[0]——a00a01a02a03a[1
6、]——a10a11a12a13a[2]——a20a21a22a23a可以理解为:引用例如:b[1][2]=a[2][3]/2下标不要越界二维数组的声明及引用数组11将所有数据写在一个{}内,按顺序赋值例如:staticinta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};分行给二维数组赋初值例如:staticinta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};可以对部分元素赋初值例如:staticinta[3][4]={{1},{0,6},{0,0,11}};二维数
7、组的初始化数组12数组作为函数参数数组元素作实参,与单个变量一样。数组名作参数,形、实参数都应是数组名,类型要一样,传送的是数组首地址。对形参数组的改变会直接影响到实参数组。数组13例6-2使用数组名作为函数参数主函数中初始化一个矩阵并将每个元素都输出,然后调用子函数,分别计算每一行的元素之和,将和直接存放在每行的第一个元素中,返回主函数之后输出各行元素的和。数组14#includeusingnamespacestd;voidRowSum(intA[][4],intnrow){intsum;for(inti=0
8、;i