[数学]第5章 数组和指针.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[数学]第5章 数组和指针

第5章数组和指针 5.1 数组 5.2 指针 5.3 指针与函数 5.4 指针与数组 5.1数 组 5.1.1 数组说明 5.1.2 数组初始化 5.1.3 数组赋值 5.1.4 数组越界 5.1.5 二维数组 5.1.6 多维数组 5.1.7 数组作为函数参数 数组 复合数据类型 相同类型元素的有序集合。 占据一组连续的内存空间。 数组的每一项称为一个元素。 当若干数据具有相同的数据类型并且互相 有一定关系时,把它们组织成数组非常有效! 5.1.1 数组说明 种类 一维数组 二维数组——矩阵 三维及以上的数组——多维数组 定义(一维数组): 类型名数组名[常量表达式]; 常量表达式表示一维数组中存储的元素个数。 数组元素的访问(一维数组) 下标访问[ ] 对数组中某一个元素是通过数组名加下标访问的。 下标是从0开始 一个具有N个元素的数组a,其有效元素为a[0]至a[N-1]。 int a[10]; //元素为a[0]~a[9] 5.1.2数组初始化 数组可在定义时初始化,其格式为: 类型数组名[常量表达式]={值1,值2,...,值N}; int a[3]={1,2,3}; //初始化三个数组元素 初始化值的个数可以小于或等于数组定义的元素个数,但不可以多于元素个数。不足部分的数组元素系统自动以0值填充。 int a[10]={4,5}; //只初始化前两个元素,其他元素等于0 在显式初始化时,可以不写数组范围,系统自动计算数组元素个数(等于初始化值的个数)。 int a[]={1,2,3,4}; //数组大小由初始化值个数确定,因而数组大小为4 5.1.3 数组赋值 C++不支持数组之间的直接赋值,只能一个一个元素地赋值。 int b[20],a[20]; for (int i=0;i20;i++) b[i]=a[i]; //使用循环逐一赋值 数组不能整体输入输出 for(int i=0;i20;i++) cin a[i]; for(int i=0;i20;i++) couta[i]; //使用循环逐一输入输出 5.1.4 数组越界 C++编译和执行时不检查数组下标是否越界 #include iostream.h void main(void) { int a[3]={0,1,2}; for(int j=0;j=3;j++) couta[j]endl; } 数组与字符串 字符数组——元素为字符的数组 char ca[4];//4个字符 char ca[]={‘a’,‘b’,‘c’,‘d’} ;//4个字符 用字符数组存放字符串(字符串常、变量) 字符串用字符数组表示. 字符串以空字符null(‘\0’)结尾,也占据一个数组元素的位置。 字符数组初始化: 在末尾加一个’\0’,便构成了字符串 char ca[8]={‘p’,’r’,’o’,’g’,’r’,’a’,’m’,’\0’} char ca[]=“program” ;//8个字符 char ca[4]=“program”;//错误,数组大小小于初始化值的个数 字符串的输入输出 可以将字符串一次输入和输出 输出 coutca; 输入 cinca; 输入多个字符串时,以空格分隔 char str1[5],str2[5],str3[5]; cinstr1str2str3; 5.1.5 二维数组 2.二维数组按照一维数组存储 逻辑上按行列方式排列,在内存中顺序存放,一般是按先行后列的顺序在内存中线性排列的。 例:int a[2][3]; a[0][0] a[0][1] a[0][2] a[1][0] a[1][1] a[1][2] 各元素在内存中的排列顺序如下: a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2] 二维数组初始化 1.分行初始化: 例:int b[2][3]={{1,2,3},{4,5,6}}; {1,2,3}赋给b数组第0行的各元素{4,5,6}赋给b数组第1行的各元素。 d[0][0]=1,d[0][1]=2,d[0][2]=3 d[1][0]=4,d[1][1]=5,d[1][2]=6 2.按数组在内存中的排列顺序初始化 例:int d[2][3]={1,2,3,4,5,6}; 3.部分元素初始化, 剩余元素系统自动置为0 例:int c[2][3]={{1,2},{4,5}}; {1,2}赋给c数组第1行的前两列元素, {4,5}赋给c数组第2行的前两列元

文档评论(0)

hhuiws1482 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档