数组维数组学习教案.pptx
《数组维数组学习教案.pptx》由会员分享,可在线阅读,更多相关《数组维数组学习教案.pptx(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数组维数组数组维数组第一页,共56页。2 2什么什么(shn me)(shn me)情况下使用数组情况下使用数组?int a,b,c;char c1,c2,c3;float f1,f2,f3;double x,y,z;100个整数排序,怎么定义变量?数组批量(p lin)定义一系列相同类型的数据第1页/共56页第二页,共56页。3 3什么什么(shn me)(shn me)是数组?是数组?处理批量数据时,基本类型数据不能进行有效的表示、处理和存储。构造(guzo)数据类型数组:相同数据类型的变量的集合。数组元素内存中连续存放。第2页/共56页第三页,共56页。4 4什么什么(shn me)(s
2、hn me)是数组?是数组?数组中的各变量(binling)称为元素。每个元素用下标区分。数组用一个名字作为标识。a0a1a2a3a4int a5;第3页/共56页第四页,共56页。5 5数组分类(fn li)一维数组一个下标(xi bio)a10二维数组两个下标(xi bio)a1010三维数组三个下标(xi bio)a1025第4页/共56页第五页,共56页。6 6本章本章(bn zhn)(bn zhn)主要内容主要内容l l一维数组的定义与引用l l字符(z f)数组l l二维数组的定义与引用l l 典型例题第5页/共56页第六页,共56页。7 7一维数组定义一维数组定义(dngy)(d
3、ngy)和引用和引用一维数组的定义语句:数据类型 数组名数组长度;数组名:符合C命名规则。特殊含义(hny)是地址常量。“”是下标运算符,是数组的标志。数组长度:整型常量,元素的个数。数组类型:数组元素的类型,如int、float等可同时说明多个数组和变量。第6页/共56页第七页,共56页。8 8一维数组在内存一维数组在内存(ni cn)(ni cn)中存储的示意图中存储的示意图int abc5short abc5第7页/共56页第八页,共56页。9 9一维数组元素一维数组元素(yun s)(yun s)的引用的引用如何使用数组元素?数组名下标下标可以是常量(chngling)或表达式a2 a
4、x+2下标变量虽然有下标,但它的使用和简单变量是一样的。第8页/共56页第九页,共56页。1010一维数组元素一维数组元素(yun s)(yun s)的引用的引用float a20;int x=4,y=5;a4=5;a5=8;a0=ax+ay/2;printf(“%f”,a0);第9页/共56页第十页,共56页。1111编程实现编程实现(shxin)(shxin)一维数组的输入输出。一维数组的输入输出。#include#include void main()void main()int i,a10;int i,a10;for(i=0;i10;i+)/*for(i=0;i10;i+)/*输入输入
5、(shr)(shr)数组中的数组中的1010个数个数*/*/scanf(%d,&ai);scanf(%d,&ai);for(i=0;i10;i+)/*for(i=0;i10;i+)/*输出数组中的输出数组中的1010个数个数*/*/printf(%d,ai);printf(%d,ai);第10页/共56页第十一页,共56页。1212例例设有整型数组a,其长度是5。编写程序,令5个数组元素(yun s)的值依次为10、20、30、40、50并输出数组个元素(yun s)的值。分析:循环循环变量的初始值第11页/共56页第十二页,共56页。1313第12页/共56页第十三页,共56页。1414一维
6、数组的初始化一维数组的初始化数据类型 数组名容量=常量表达式1,常量表达式2,;例如:int i10=1,2,3,4,5,6,7,8,9,10float farr=1.1,2.2,3.3,4.4,5.5,6.6int a10=0,1,2,3,4可以(ky)只给前k个元素赋初始值。这时,后面未赋值的元素则自动初始化为0第13页/共56页第十四页,共56页。1515举例举例输入输入(shr)10(shr)10个数,求其中的最大个数,求其中的最大数数#include#include void main()void main()int i,a10,imax;int i,a10,imax;/imax/i
7、max 存放存放(cnfng)(cnfng)最大数最大数for(i=0;i10;i+)for(i=0;i10;i+)/*/*输入数组中的输入数组中的1010个数个数*/*/scanf(%d,&ai);scanf(%d,&ai);imax=a0;imax=a0;for(i=1;i10;i+)for(i=1;iimax)if(aiimax)imax=ai;imax=ai;printf(%dn,imax);printf(%dn,imax);第14页/共56页第十五页,共56页。1616一维数组应用一维数组应用(yngyng)(yngyng)举例举例输出Fibonacci 数列的前20项。1、1、2、
8、3、5、8、13、21、在数学上,斐波纳契数列以如下(rxi)被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n=2)第15页/共56页第十六页,共56页。1717输出输出(shch)Fibonacci(shch)Fibonacci 数列的前数列的前2020项项#include#include void main(void)void main(void)int fib20=1,1,i;int fib20=1,1,i;for(i=for(i=2 2;i20;i+);i20;i+)fib i=fib i-2+fib i-1;fib i=fib i-2+fib i-1;fo
9、r(i=0;i 20;i+)for(i=0;i b)则a,b互换l l输出(shch)a,b第19页/共56页第二十页,共56页。2121排序排序(pi x)(pi x)(从小到大)(从小到大)33个数排序个数排序(pi x)(pi x)三个数排序(pi x)a,b,cif(ab)则a,b互换if(ac)则a,c互换if(bc)则b,c互换输出a,b,c第20页/共56页第二十一页,共56页。2222排序排序(pi x)(pi x)(从小到大)(从小到大)四个数排序四个数排序(pi x)(pi x)四个数排序(pi x)a,b,c,dif(ab)则a,b互换if(ac)则a,c互换if(ad)
10、则a,d互换if(bc)则b,c互换if(bd)则b,d互换if(cd)则c,d互换输出a,b,c,d第21页/共56页第二十二页,共56页。2323五个数排序五个数排序(pi x)(pi x)(从小到大)(从小到大)int s5=8int s5=8,7 7,9 9,5 5,66第第1 1步:步:s0s0与后面的与后面的4 4个数比较个数比较(bjio)(bjio)和交换和交换7 8 9 5 67 8 9 5 67 8 9 5 67 8 9 5 65 8 9 7 65 8 9 7 65 8 9 7 65 8 9 7 6第第2 2步:步:s1s1与后面的与后面的3 3个数比较个数比较(bjio)
11、(bjio)和交换和交换5 8 9 7 65 8 9 7 65 8 9 7 65 8 9 7 65 7 9 8 65 7 9 8 65 6 9 8 75 6 9 8 7第22页/共56页第二十三页,共56页。24248 8,7 7,9 9,5 5,6 6第3步;s2与后面(hu mian)的2个数比较和交换5 6 9 8 75 6 8 9 75 6 7 9 8第4步;s3与后面(hu mian)的1个数比较和交换的过程:5 6 7 9 85 6 7 8 9第23页/共56页第二十四页,共56页。2525第24页/共56页第二十五页,共56页。2626选择选择(xunz)(xunz)排序基本思路
12、(由小到大):排序基本思路(由小到大):排序的排序的n n个数据个数据anan令令a0a0和其后的和其后的a1an-1a1an-1进行进行(jnxng)(jnxng)比较比较若其后的数小于若其后的数小于a0a0,则两数进行,则两数进行(jnxng)(jnxng)交换交换a0a0为为n n个数中最小的数。个数中最小的数。令令a1a1和其后的和其后的a2an-1a2an-1进行进行(jnxng)(jnxng)比较比较若其后的数小于若其后的数小于a1a1,则两数进行,则两数进行(jnxng)(jnxng)交换交换最终,最终,a1a1为为n n个数中次小的数。个数中次小的数。如此等等,最终这如此等等,
13、最终这n n个数按从小到大的顺序存放在个数按从小到大的顺序存放在a0an-1a0an-1中。中。第25页/共56页第二十六页,共56页。2727冒泡排序冒泡排序相邻相邻(xin ln)(xin ln)两数比较两数比较按从头到尾的顺序,进行两相邻数据的比较(bjio)。如s0与s1比,s1与s2比,以此类推。比较(bjio)过程中,若发现后一个数据比前一个小(仍以由小到大排序为例),则将两个数据的位置对调。比较(bjio)的结果,最后一个数便是最大的。然后进行第二轮的从头到尾的相邻两数的比较(bjio)。这个比较(bjio)过程要反复地从头到尾进行多次排序便完成了。第26页/共56页第二十七页,
14、共56页。28288 8,7 7,9 9,5 5,6 6第第1 1轮比较轮比较(bjio)(bjio)8,7,9,5,6 7,8,9,5,68,7,9,5,6 7,8,9,5,6有数据互换有数据互换7,8,9,5,6 7,8,9,5,67,8,9,5,6 7,8,9,5,67,8,9,5,6 7,8,5,9,6 7,8,9,5,6 7,8,5,9,6 有数据互换有数据互换7,8,5,9,6 7,8,5,6,9 7,8,5,9,6 7,8,5,6,9 有数据互换有数据互换第第2 2轮比较轮比较(bjio)(bjio)7,8,5,6,9 7,8,5,6,87,8,5,6,9 7,8,5,6,87,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组 学习 教案
限制150内