C语言第七章数组

C语言第七章数组

ID:40841620

大小:214.00 KB

页数:45页

时间:2019-08-08

C语言第七章数组_第1页
C语言第七章数组_第2页
C语言第七章数组_第3页
C语言第七章数组_第4页
C语言第七章数组_第5页
资源描述:

《C语言第七章数组》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章数组7.1数据结构与数组的概念到目前止,算法的三个基本结构我们都能够用C语言描述,从理论上说来,任何类型的应用问题都应该能编写程序实现,但实际上并非如此,原因是因为:影响程序设计的因素除算法外还有数据结构。(1)数据结构概念编写一个程序除了重视算法的设计外,还需重视数据类型的选择,即选择合适的数据类型来存放要处理的数据。在程序设计中,数据类型就称为数据结构,选择合适的数据类型实际上就是进行数据结构的设计。在程序设计中有格言:数据结构+算法=程序说明数据结构与算法同等重要,算法依赖于数据结构,对于同一个问题的求解,可以采用不同的

2、数据结构和不同的算法,对不同的数据结构有不同的算法,其复杂程度也会不同,选择合适的数据结构,可以降低算法的复杂程度。因此,在程序设计中应重视数据结构的设计。例:求任意100个数中的最大值。main(){inti,a,max;max=-32768for(i=1;i<=100;i++){scanf(“%d”,&a);if(a>max)max=a;}printf(“max=%d”,max);}这里我们选择一个简单变量作为数据结构来存放初始数据(合理,算法简单),而不是选择100个简单变量作为数据结构(合理,算法简单)。对于三个数的排序

3、,选择三个简单变量作为数据结构是可行的,但对于很多个数的排序来说,若选择很多个简单变量作为数据结构就会使算法很复杂,原因就是因为数据结构的选择不合理。对于此类问题,用将要学到的数组作为数据结构会使算法很简单。在很多应用中,选择数组作为数据结构是很方便的。(2)数组的概念数组即是一组具有同样类型的数据的集合,统一用一个名字代表,这个名字称数组名,这个数组名不再代表一个数,而是代表一组数(或者说代表一组连续的内存单元)。如:inta[10]a[0]a[1]a[2]a[3]a[4]a[5]a[6]a[7]a[8]a[9]数组元素下标数组名

4、数组中的各成员称数组元素,由数组名加下标唯一地确定。将一组数用一个名字代表,便于管理。以上数组a其下标只有一个方向的编号,即其元素只有一个下标,因此称为一维数组;可有二维数组、三维数组、…、七维数组。7.2一维数组的定义和引用1、一维数组的定义一般形式:类型符数组名[常量表达式];如:inta[10];floatb[10]类型符数组名长度作用:分配一组连续的内存单元。要使用数组存放数据时,必须先定义。说明:◆数组名的命名规则与变量相同。◆常量表达式表示元素的个数(长度),下标从0开始。◆常量表达式不能包含变量,即不允许作动态定义。2

5、、一维数组元素的引用取出数组中某一元素的值或将一数存放到据数组中的指定位置即为引用。要引用数组中的元素时,一般只能逐个引用,不能进行整体引用。引用的一般形式:数组名[下标]如:a[0]=50;a[1]=100;a[2]=a[0]+a[1];与a2=a0+a1有根本性的区别:下标可变。例:从键盘输入10个数。用变量:scanf(“%d%d%d%d%d%d%d%d%d%d”&a0,&a1,&a2,&a3,&a4,&a5,&a6,&a7,&a8,&a9);用数组:for(i=0;i<20;i++)scanf(“%d”,&a[i]);用循环

6、控制输入个数和下标的变化。注意下标的变化范围。可见用数组的优越性,数据越多,其优越性就越明显。3、一维数组的初始化在定义数组的同时给数组赋初值。如:inta[10]={0,1,2,3,4,5,6,7,8,9};inta[10]={0,1,2,3,4};inta[]={0,1,2,3,4};4、一维数组程序举例(1)对100个学生的分数统计最高分、最低分和平均分。用变量作为存放初始数据的数据结构:main(){inti,a,max,min;floataver=0;max=0;min=100;for(i=0;i<100;i++){sca

7、nf(“%d”,&a);if(a>max)max=a;if(amax)max=a[i];if(a[i]

8、er+=a[i];}aver/=100;printf(“%d,%d,%f”,max,min,aver);}此例,对于存放初始数据的数据结构既可用变量,也可用数组。如果是找最大值和最小值所在的位置呢?(2)统计高于平均分的人数。用变

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

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

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