




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第九章数组,引入,上一页,下一页,暂停,重放,系统,返回,休息,一、数组的概念,数组是指一组同类型数据组成的序列。数组中的每个数据称为一个元素,用一个统一的名字来标识,用下标指示数组中的各个元素。,二、数组的维数,一维:只含有一个下标的数组称为一维数组a9,二维:含有两个下标的数组称为二维数组b34,多维:含有多个下标的数组称为多维数组c2354,上一页,下一页,暂停,重放,系统,返回,休息,第一节一维数组,一、定义,格式:类型标识符数组名常量表达式;,(1)用,不能用(),(2)下标只能用常量,(3)下标必须是大于零的整数,(4)下标最大元素个数是65535,指明数组中各元素的数据类型,指明数组包含的元素个数,举例:intab10;,说明:,练习,上一页,下一页,暂停,重放,系统,返回,休息,二、数组元素的初始化,在定义数组时对各元素指定初始值,称为数组的初始化,例:intab5=1,3,5,7,9;,内存中存储格式为:,例:charc10=c,l,a,n,g,u,a,g,e,内存中存储格式为:,ab0ab1ab2ab3ab4,c0c1c2c3c4c5c6c7c8c9,ab,c,上一页,下一页,暂停,重放,系统,返回,休息,说明:,1.下标是从0开始的,2.初始化数据用括起,各数据间用“,”分隔,3.数据个数可以少于数组的元素个数,但不能大于元素个数。,inta5=1,3,5;,inta5=1,2,3,4,5,6,7;,4.当给所有元素赋值时,可以省略数组元素个数,系统根据数据个数确定数组元素的个数。,floatb3=1.0,2.0,3.5;,floatb=1.0,2.0,3.5;,floatb=1.0,2.0,3.5;,floatb8=1.0,2.0,3.5;,上一页,下一页,暂停,重放,系统,返回,休息,三、数组元素的引用,引用格式:数组名下标,(1)定义与引用的区别,inta9;a9=10;,(2)数组元素的赋值只有在初始化时才能整体赋值,以后只能通过逐个赋值的方法进行。,例:intb3=1,0,5;,例:a2=3;,说明:,a0=a4+a2;,intb3;b=1,0,5;,上一页,下一页,暂停,重放,系统,返回,休息,上一页,下一页,暂停,重放,系统,返回,休息,二、数组首地址引用方法,第二节一维数组和指针,例:*(a+2)=3;scanf(“%d”,a+i);printf(“%d”,*(a+i);,例:inta5=1,3,5,7,9;,内存中存储格式为:,a0a1a2a3a4,地址,a+1,a+2,a+3,a+4,a,一、一维数组和数组元素的地址,引用格式:数组名+i,上一页,下一页,暂停,重放,系统,返回,休息,例:*(p+2)=3;for(I=0;I=4;I+)scanf(“%d”,p+);p=a;for(I=0;I=4;I+)printf(“%d”,*p+);,例:inta5=1,3,5,7,9,*p=a;,内存中存储格式为:,a0a1a2a3a4,p+1,p+2,p+3,p+4,p,三、利用指针引用一维数组元素,引用格式:指针名+i,上一页,下一页,暂停,重放,系统,返回,休息,例:p2=5;for(i=0;ibreturna;elsereturnb;,第三节指针和数组做为函数参数,二、数组名和指针做实参(传址调用),三、数组和指针做形参格式1:函数类型函数名(参数类型指针)例:intmax(int*p);格式2:函数类型函数名(参数类型数组)例:intmax(inta);或intmax(intaM);,例:main()inta=1,2,3,4,5;printf(“%d”,mix(a1,a3);,第四节数组元素的引用举例,输出下列矩阵,上一页,下一页,暂停,重放,系统,返回,休息,#include“stdio.h”main()inti;inta20;for(i=0;i20;i+)ai=i+1;for(i=0;i20;i+)if(i%5=0)printf(“n”);printf(“%8d”,ai);,23457891011121314151617181920,printf(“%8d”,*(a+i);,*(a+i)=i+1;,输入十个数,计算其平均值,floataver(floata,intn)inti;floatsum=0,average;for(i=0;i=n-1;i+)sum=sum+ai;average=sum/n;returnaverage;,上一页,下一页,暂停,重放,系统,返回,休息,main()inti;floatsum=0,a10,av;for(i=0;i10;i+)scanf(“%f”,第五节二维数组,一、引言,假设某班级学生的成绩如下:,上一页,下一页,暂停,重放,系统,返回,休息,二、定义,格式:类型数组名常量表达式1常量表达式2,举例:intb34;,说明:,1.二维数组的排列顺序是按行排列的,2.二维数组所有元素个数不能大于65535,intb200400;,上一页,下一页,暂停,重放,系统,返回,休息,三、初始化,同一维数组一样,二维数组也可以在定义的时候赋值,intb34=1,2,3,4,5,6,7,8,9,10,11,12;,说明:,1.初始化可以采用分行的方法完成,2.也可以直接按各个元素在数据中的排列顺序直接列出,intb34=1,2,3,4,5,6,7,8,9,10,11,12;,这种方式直观,清晰,是最常见的一种方式,这种方式分不清行列间的关系,而且数据较多时很容易出错,上一页,下一页,暂停,重放,系统,返回,休息,3.给所有元素赋值时或采用分行方式赋值时,下标1可省略,例:int3=1,2,3,6,5,4;,a00a01a02a10a11a12,inta23=1,2,1;,intb3=1,2,3,4,5,6,7,8,9,10,11,12;,inta23=1,2,3,6,5,4;,inta3=1,2,1,a00a01a02a10a11a12,4.任何时候下标2不能省略,因为系统无法判断元素个数,a00a01a02a10a11a12,上一页,下一页,暂停,重放,系统,返回,休息,四、二维数组的引用,与一维数组的引用类似,二维数组的引用也是通过数组名和两个下标进行的,例:编写输入各位同学成绩的程序段(假设有40位同学),main()inti,j;floatcj416;for(i=1;i=40;i+)for(j=1;j=5;j+)printf(“请输入第%d位同学第d门成绩”),i,j);scanf(“%f”,cjij);,上一页,下一页,暂停,重放,系统,返回,休息,指向指针的指针,i,4,p2,int*p2;inti=3;p2=,定义一个指向指针变量的变量p1,定义一个指针变量p2,定义一个整型变量i,将变量i的地址传给p2,即使p2指向变量i,将指针变量p2的地址传给p1,即使p1指向p2,一个指针可以指向一个整型数据、实型数据、字符型数据以及结构体、共用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025甘肃天水市武山县人力资源和社会保障局招聘城镇公益性岗位人员26人考前自测高频考点模拟试题带答案详解
- 2025年扶余市博物馆公开选调解说员(4人)考前自测高频考点模拟试题及答案详解(名校卷)
- 2025年中共溧阳市委党校长期招聘教师2人(江苏常州市)考前自测高频考点模拟试题及答案详解(新)
- 2025江苏南京大数据集团有限公司招聘模拟试卷附答案详解(黄金题型)
- 2025年四会市市级机关公开遴选考试真题
- 2025年DNA、RNA疫苗项目合作计划书
- 2025年宁东镇公开招聘公益性岗位人员模拟试卷及答案详解一套
- 2025福建莆田市市直事业单位定向招考未就业随军家属6人模拟试卷附答案详解(模拟题)
- 2025国家民委直属事业单位招聘(48人)模拟试卷附答案详解(考试直接用)
- 2025内蒙古鄂尔多斯实验室成果转化部招聘3人考前自测高频考点模拟试题及答案详解(夺冠系列)
- 2025年“10.13建队日”分批入队活动总结:强国复兴有我争当新时代好少年
- 2024年服装时装项目资金筹措计划书代可行性研究报告
- 施工三方协议7篇
- 2025年数字娱乐行业数字化娱乐内容与虚拟现实体验研究报告
- 水生产处理工三级安全教育(班组级)考核试卷及答案
- 2025年贵州省贵阳市辅警考试题库(附答案)
- 小学科学新教科版三年级上册全册教案(2025秋新版)
- 2024北森图形推理题
- 外科学题库水电解质代谢和酸碱平衡失调
- 35kV输电线路工程旋挖钻孔专项施工方案
- 抗精神病药物的副作用及处理
评论
0/150
提交评论