ImageVerifierCode 换一换
你正在下载:

数组.ppt

[预览]
格式:PPT , 页数:93 ,大小:2.42MB ,
资源ID:2721813      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2721813.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数组.ppt)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数组.ppt

1、1数组数组2一维数组的定义和引用一维数组的定义和引用数组是同一类型的一组值(数组是同一类型的一组值(10个个char或或15个个int),在内存中顺序存放在内存中顺序存放。整个数组共用一个名字,而其中的每一项又称整个数组共用一个名字,而其中的每一项又称为一个元素。为一个元素。一、定义方式:一、定义方式:类型说明符类型说明符数组名数组名常量表达式常量表达式;inta4;/表明表明a数组由数组由4个个int型元素组成型元素组成定义类型定义类型数组名称数组名称元素个数元素个数3inta4;/表明表明a数组由数组由4个个int型元素组成型元素组成其元素分别为:其元素分别为:a0,a1,a2,a3其序号

2、从其序号从0开始开始。若存放首地址为。若存放首地址为2000H,则在,则在内存中为:内存中为:a3a2a1a02010H200CH2008H2004H2000HC+不允许对数组的大小作动态的定义,不允许对数组的大小作动态的定义,即即数组的数组的大小不能是变量大小不能是变量,必须是常量,必须是常量。必须是常数必须是常数4如果要根据不同的数值改变数组的大小,可如果要根据不同的数值改变数组的大小,可用常量表达式。如:用常量表达式。如:#defineSIZE50voidmain(void)intartSIZE;.5二、一维数组元素的引用二、一维数组元素的引用数组必须先定义,具体引用时(赋值、运算、输出

3、)其元数组必须先定义,具体引用时(赋值、运算、输出)其元素素等同于变量等同于变量。voidmain(void)inti,a10;for(i=0;i=0;i-)coutait;cout=3)2113853211.f7f6f5f5f4f3f2f1f0fi=fi-1+fi-2voidmain(void)inti;intf20=1,1;for(i=2;i20;i+)fi=fi-1+fi-2;for(i=0;i20;i+)if(i%5=0)cout“n”;coutfit;9下面程序的运行结果是:下面程序的运行结果是:voidmain(void)inta6,i;for(i=1;i3)%5;coutait;

4、iai3440-4随机随机a5a4a3a2a1a0输出:输出:-404431-42034445310排序算法排序算法用起泡法对用起泡法对6个数排序(由小到大)个数排序(由小到大)将相邻的两个数两两比较,将小的调到前头。将相邻的两个数两两比较,将小的调到前头。985420895420859420854920854290854209第一趟第一趟循环循环5次次584209548209542809第二趟第二趟循环循环4次次854209543089543089453089435089430589第三趟第三趟循环循环3次次11430589340589304589304589第四趟第四趟循环循环2次次034

5、589第五趟第五趟循环循环1次次总结:总结:n次数次数趟数趟数j(1n-1)54321n-j12345共有共有6个数个数for(j=1;j=n-1;j+)for(i=1;iai+1)t=ai;ai=ai+1;ai+1=t;12一般,元素的序号从一般,元素的序号从0开始,因此,程序可以变动如下:开始,因此,程序可以变动如下:for(j=0;jn-1;j+)for(i=0;iai+1)t=ai;ai=ai+1;ai+1=t;13二维数组的定义和引用二维数组的定义和引用一、定义方式:一、定义方式:类型说明符类型说明符数组名数组名常量表达式常量表达式常量表达式常量表达式;inta34;其元素分别为:其

6、元素分别为:a00,a01,a02,a03,a10,a11,a12,a13,a20,a21,a22,a23表明表明a数组由数组由34个个int型元素组成型元素组成定义类型定义类型数组名数组名行数行数列数列数14其行列的序号均其行列的序号均从从0开始开始。若存放首地址为。若存放首地址为2000H,则在内存中为:则在内存中为:a00a01a02a03a10 a11 a12a13a20a21a22a232000H2008H2010H 2014H201cH 2020H2028H 202cH即在内存中,多维数组依然是即在内存中,多维数组依然是直线顺序直线顺序排列的,排列的,第第一个元素位于最低地址处。一

7、个元素位于最低地址处。其元素分别为:其元素分别为:a00,a01,a02,a03,a10,a11,a12,a13,a20,a21,a22,a2315二、二维数组的引用二、二维数组的引用与一维数组一样,二维数与一维数组一样,二维数组必须先定义,其维数必组必须先定义,其维数必须是常量。具体引用时须是常量。具体引用时(赋值、运算、输出)其(赋值、运算、输出)其元素等同于变量。元素等同于变量。voidmain(void)inta23,i,j;cout“Input2*3numbersn”;for(i=0;i2;i+)/*输入输入*/for(j=0;jaij;for(i=0;i2;i+)/*输出输出*/f

8、or(j=0;j3;j+)coutaijt;cout“n”;输入:输入:123456输出:输出:_1_2_3_4_5_6定义定义赋值赋值输出输出16三、二维数组的初始化三、二维数组的初始化在定义数组的同时给数组元素赋值。即在编译阶段在定义数组的同时给数组元素赋值。即在编译阶段给数组所在的内存赋值。给数组所在的内存赋值。1、分行赋值、分行赋值inta34=1,2,3,4,5,6,7,8,9,10,11,12;2、顺序赋值、顺序赋值inta34=1,2,3,4,5,6,7,8,9,10,11,12;/依次赋值依次赋值173、部分赋值、部分赋值inta34=1,5,9;/*a00=1,a10=5,a

9、20=9其余元素为其余元素为0*/inta34=0,1,5;/*a00=0,a01=1,a10=5*/100050009000010050000000184、分行或全部赋值时,分行或全部赋值时,可以省略第一维,第二维可以省略第一维,第二维不可省。不可省。inta4=1,2,5,6,7,8,9,10,11,12;5、不能给数组整体赋值,只能一个一个地赋值。、不能给数组整体赋值,只能一个一个地赋值。6、用、用static定义的数组不赋初值,系统均默认其为定义的数组不赋初值,系统均默认其为0。staticinta23;inta23=1,2,3,.,12;19voidmain(void)inta33,

10、i,j;for(i=0;i3;i+)for(j=0;j3;j+)if(i=2)aij=ai-1ai-1j+1;elseaij=j;coutaijt;cout“n”;i=0a00=0a01=1a02=2i=1a10=0a11=1a12=2a20=a1a10+1=a10+1=1i=2a21=a1a11+1=a11+1=2a22=a1a12+1=a12+1=3输出:输出:_0_1_2_0_1_2_1_2_320有一个有一个3 34 4的矩阵,要求编程序求出其中值最大的的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。那个元素的值,以及其所在的行号和列号。先考虑解此问题的思路。从

11、若干个数中求最大者的先考虑解此问题的思路。从若干个数中求最大者的方法很多,我们现在采用方法很多,我们现在采用“打擂台打擂台”算法。如果有算法。如果有若干人比武,先有一人站在台上,再上去一人与其若干人比武,先有一人站在台上,再上去一人与其交手,败者下台,胜者留台上。第三个人再上台与交手,败者下台,胜者留台上。第三个人再上台与在台上者比,同样是败者下台,胜者留台上。如此在台上者比,同样是败者下台,胜者留台上。如此比下去直到所有人都上台比过为止。最后留在台上比下去直到所有人都上台比过为止。最后留在台上的就是胜者。的就是胜者。21程序模拟这个方法,开始时把程序模拟这个方法,开始时把a00a00的的值赋

12、给变量值赋给变量maxmax,maxmax就是开始时的擂主,就是开始时的擂主,然后让下一个元素与它比较,将二者中然后让下一个元素与它比较,将二者中值大者保存在值大者保存在maxmax中,然后再让下一个元中,然后再让下一个元素与新的素与新的maxmax比,直到最后一个元素比完比,直到最后一个元素比完为止。为止。maxmax最后的值就是数组所有元素中最后的值就是数组所有元素中的最大值。的最大值。22max=a00;/使使max开始时取开始时取a00的值的值for(i=0;i=2;i+)/从第从第0行到第行到第2行行for(j=0;jmax)/如果某元素大于如果某元素大于maxmax=aij;/ma

13、x将取该元素的值将取该元素的值row=i;/记下该元素的行号记下该元素的行号icolum=j;/记下该元素的列号记下该元素的列号jcoutrowtcolumtmaxendl;23将数组行列式互换。将数组行列式互换。123456789147258369for(i=0;i3;i+)for(j=0;j3;j+)t=aij;aij=aji;aji=t;for(i=0;i3;i+)for(j=0;ji;j+)t=aij;aij=aji;aji=t;24打印杨辉三角形打印杨辉三角形1111 2 11 3 311 4 64115101051aij=ai-1j-1+ai-1j25voidmain(void)s

14、taticintn2,i,j,k;for(i=0;i2;i+)nj+=ni+i+1;coutnktnk+endl;2126以下程序用于从键盘上输入若干个学生的成绩,统计出平以下程序用于从键盘上输入若干个学生的成绩,统计出平均成绩,并输出低于平均成绩的学生成绩。均成绩,并输出低于平均成绩的学生成绩。输入负数结束输入负数结束voidmain()floatx100,sum=0,ave,a;intn=0,i;couta;ave=sum/n;cout“ave=“aveendl;for(i=0;_;i+)if(_)cout“x“i“”xiaa=0sum+=an+inxix;i=0;while(x)ai=x

15、%8;x=x/8;i+;n=i;for(i=n-1;i=0;i-)coutai;coutx;2536913 25 34 56 7836913 34 56 78x25y2534343036913 34 56 78x25y25343436913 25 56 78x3434y34565631voidmain(void)inta6=1,4,7,10,12;intx;for(inti=0;i5;i+)coutait;coutendl;coutx;for(i=0;ix)break;for(intj=i;j=5;j+)inty=aj;aj=x;x=y;for(i=0;i6;i+)coutait;coutx;

16、25369 132534 56 7833voidmain(void)inta6=1,4,7,10,12;intb6;intx;for(inti=0;i5;i+)coutait;coutendl;coutx;for(i=0;i5;i+)if(aix)bi=ai;elsebreak;bi=x;for(intj=i;j5;j+)bj+1=aj;for(i=0;i6;i+)coutbit;coutx;2578563425for(i=n-1;i=0;i-)从后向前循环从后向前循环35voidmain(void)inta6=2,5,8,10,12;intx;for(inti=0;i5;i+)coutait;coutendl;coutx;for(i=4;i0;i-)if(aix)ai+1=ai;elsebreak;ai+1=x;for(i=0;i6;i+)coutait;coutendl;关键!从后面开始循环关键!从后面开始循环从前向后移数从前向后移数不大于退出循环不大于退出循环赋值赋值36用筛选取法求出用筛选取法求出2200之间的所有素数。之间的所有素数。筛法:首先将筛法:首先将1n个数为数组置初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1