《高级语言程序设计教学课件》第6章 数组.ppt

《高级语言程序设计教学课件》第6章 数组.ppt

ID:59409598

大小:1.36 MB

页数:96页

时间:2020-09-19

《高级语言程序设计教学课件》第6章 数组.ppt_第1页
《高级语言程序设计教学课件》第6章 数组.ppt_第2页
《高级语言程序设计教学课件》第6章 数组.ppt_第3页
《高级语言程序设计教学课件》第6章 数组.ppt_第4页
《高级语言程序设计教学课件》第6章 数组.ppt_第5页
资源描述:

《《高级语言程序设计教学课件》第6章 数组.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、提出问题:【例6-1】从键盘输入10个数,求平均值并输出所有大于平均值的数。采用以前的方法解决,存在以下问题:循环体中只用一个变量完成。计算出平均值后,因没有保存这10个数,无法完成比较。用十个变量完成。无法完成循环输入。另外如果数据增加到100个、1000个或更多时,定义如此多的变量不现实。1第六章数组6.1一维数组6.3二维数组及多维数组6.5字符数组和字符串学习目标一维数组二维数组字符数组字符串3基本概念数组是一种构造数据类型数组——有序数据的集合,用数组名标识元素——是数组的基本组成成份,它们是同一种数据类型,用

2、数组名和下标确定aa[5]5a[4]4a[3]3a[2]2a[1]1a[0]04aa[5]5a[4]4a[3]3a[2]2a[1]1a[0]01、一维数组的说明定义方式:数据类型数组名[整型常量表达式];合法标识符例inta[6];数组名表示该数组所占的内存单元的首地址,是地址常量编译时分配内存,并且是连续的内存字节数=数组元素个数*sizeof(元素数据类型)表示元素个数只能是常量下标从0开始6.1一维数组5数组定义举例例inti=15; intdata[i];例intdata[5]; data[5]=10;例#def

3、ineN15 inta[N];不能用变量定义数组元素个数5超出了数组定义的范围,范围是0~4共5个整型数据62、一维数组的引用数组必须先定义,后使用只能逐个引用数组元素,不能一次引用整个数组数组元素表示形式:数组名[下标表达式]其中:下标可以是整型常量或整型表达式7数组使用举例例a[0]=a[3]+a[5]+a[2*4];例a[i]=a[i-1]+a[i-2];例inta[10]; printf("%d",a);8数组元素的输入inta[6];scanf(“%d%d%d%d%d%d”,&a[0],&a[1],

4、&a[2],&a[3],&a[4],&a[5]);inti,a[6];for(i=0;i<6;i++)scanf(“%d”,&a[i]);9数组元素的输出inta[6];……;printf(“%d%d%d%d%d%d”,a[0],a[1],a[2],a[3],a[4],a[5]);inti,a[6];for(i=0;i<6;i++)printf(“%5d”,a[i]);?只想输出a[1],a[5]的值printf(“%d,%d”,a[1],a[5]);10特别注意在C语言中,程序运行时系统并不自动检验数组下标是否越界。但

5、是我们写程序时,一定要保证数组下标不能越界例如inta[4];a[0]、a[1]、a[2]、a[3]是合法的,但是a[4]、a[5]也是可以引用的,只是它们的数据是多少我们不知道11【例6-1】从键盘输入10个数,求平均值并输出所有大于平均值的数#includemain(){inti,n=10;floata[10],avg=0;printf(“Pleaseinput10data:”);for(i=0;i<10;i++)/*输入10个数*/{scanf(“%d”,&a[i]);avg+=a[i]}12

6、avg=avg/10;printf(“平均值为:%f”,avg);for(i=1;i<10;i++){if(a[i]>avg){printf(“%f”,a[i]);n++;if(n%5==0)/*每行输出5个数*/printf(“”);}}printf(“");}133、一维数组的初始化初始化方式:定义时赋初值说明:数组不初始化,其元素值为随机数部分数组元素赋初值,没有赋初值的元素为0当全部数组元素赋初值时,可不指定数组长度例inta[5]={6,2,3};a[0]=6;a[1]=2;a[2]=3;a[3]

7、=0;a[4]=0;例inta[]={1,2,3,4,5,6};编译系统根据初值个数确定数组元素个数例inta[5]={1,2,3,4,5};a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5;144、一维数组的应用举例【例6-3】从键盘输入10个互不相同的整数并存放在一维数组中,找出值最大的数组元素,并输出最大值所在的元素下标01234567898-93043879823796228kkkkkk=0;for(i=1;i<10;i++){if(a[k]

8、tdio.h>main(){inti,k;inta[10]={0};printf(“Pleaseinputdata:”);for(i=0;i<10;i++){scanf(“%d”,&a[i]);}16k=0;for(i=1;i<10;i++){if(a[k]

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

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

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