C语言程序设计_06章 数组课件.ppt

C语言程序设计_06章 数组课件.ppt

ID:57057129

大小:331.00 KB

页数:43页

时间:2020-07-30

C语言程序设计_06章 数组课件.ppt_第1页
C语言程序设计_06章 数组课件.ppt_第2页
C语言程序设计_06章 数组课件.ppt_第3页
C语言程序设计_06章 数组课件.ppt_第4页
C语言程序设计_06章 数组课件.ppt_第5页
资源描述:

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

1、第六章数组数组的定义:是有序数据的集合。数组的特点:数组中的每个元素都属于同一数据类型。数组的访问:我们用一个统一的数组名和下标来唯一地确定数组中的元素。基本类型:charintfloatdouble……构造类型:Arraystructunion空类型void指针类型:与以上各种类型相结合。概述数据类型6.1一维数组的定义和引用6.1.1一维数组的定义定义方式:类型说明符数组名[数组长度]类型说明符指明数组中每个元素的数据类型;数组名代表数组在内存中存放的起始地址;长度指明这个数组能够容纳的元素个数。例如:

2、shorta[10];它表示数组名为a,此数组有10个整型元素。如右图:………a[9]a[8]a[1]a[0]…a说明:1)数组名命名规则和用户标识符命名规则相同;2)数组名的常量表达式用方括弧括起来,而不是用圆括弧。3)数组下标表示数组中的哪一个元素,和数组长度是两个不同的概念。例如:inta[10];表示a数组共有10个元素,下标从0开始,分别为:a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]注意:没有a[10]。4)数组长度必须是一个常量或常量表达式,不能含

3、有变量,即数组的大小应在编译阶段确定,不允许在程序运行过程中才确定。例如:intn;scanf(“%d”,&n);inta[n];是不合法的。6.1.2一维数组元素的引用C语言规定,只能逐个引用数组元素而不能一次引用整个数组。一维数组元素的表示形式为:数组名[下标]其中下标可以是整型(常量/变量)或整型表达式。例如:a[0]=a[5]+a[7]-a[2*3];例6.1(P144)数组元素的引用main(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)pri

4、ntf(“%d”,a[i]);}本例使a[0]到a[9]的值为0~9,然后按逆序输出这10个元素的值。6.1.3一维数组的初始化(1)完全初始化:在定义一个数组时,对数组中所有元素都提供了初始化数据。例如:inta[10]={0,1,2,3,4,5,6,7,8,9};其中:a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=5,a[6]=6,a[7]=7,a[8]=8,a[9]=9(2)部分初始化:提供了初始化数据,但数据不够,不够的部分取0。例如:inta[10]={0,1,2,3,4

5、};其中:a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=0,a[6]=0,a[7]=0,a[8]=0,a[9]=0(3)没有初始化:只是定义了一个数组,但没有提供任何初始化数据,这时数组中每个元素的值是不确定的。例如:inta[10];(4)如果想把数组中所有元素初始化为0,可以写成:inta[10]={0,0,0,0,0,0,0,0,0,0};inta[10]={0};但不能写成:inta[10]={0*10};(5)若对数组中所有元素进行了初始化,可不指定数组长度。例如:int

6、a[5]={0,1,2,3,4};可以写成:inta[]={0,1,2,3,4};对于后一种定义系统会默认a数组的长度为5。但是如果被定义的数组长度与提供初值的个数不相同时,则数组长度不能省略。例如:inta[10]={0,1,2,3,4};只初始化了前5个元素,后5个元素不确定。例6.2(P146)用数组来处理求Fibonacci数列问题。main(){inti;intf[20]={1,1};for(i=2;i<20;i++)f[i]=f[i-2]+f[i-1];/*一次循环只求一个数*/for(i=0;i<20

7、;i++){if(i%5==0)printf(“”);printf(“%12d”,f[i]);}}6.1.4一维数组程序举例这里只求了前20个数,与P133例5.8区别。f[0]f[1]f[2]f[3]…f[18]f[19]110000000例6.3(P147)用冒泡法对10个数排序(由小到大)。冒泡法:在要排序的数中,依次将相邻的两个数进行比较,若满足排序要求,保持两者位置不变,否则交换位置:859420第一次比较589420第二次比较589420第三次比较584920第四次比较第五次比较5842905842

8、09第一次冒泡排序结果第一次冒泡排序从最前面两个元素开始,两两比较,直到最后一个元素比较完,最大的元素就到了最后的位置,这叫作“一趟”冒泡法排序。从上述我们可以得出:如果有n个数参加冒泡排序,则要进行n-1趟比较。在第j趟比较中有n-j+1个数参加排序,要进行n-j次两两比较。比如:本例中第2趟有5个数参加排序,进行了4次比较。584209第一次比较5842

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

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

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