数组结构课件.ppt

数组结构课件.ppt

ID:57016735

大小:763.50 KB

页数:99页

时间:2020-07-26

数组结构课件.ppt_第1页
数组结构课件.ppt_第2页
数组结构课件.ppt_第3页
数组结构课件.ppt_第4页
数组结构课件.ppt_第5页
资源描述:

《数组结构课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章数组、结构1本章内容数组的概念与用法结构的概念与用法1.数组的定义和使用当我们需要处理100个人甚至更多人的年龄时,在程序中该如何来表示这100个甚至更多的数据?定义100个变量吗?intx1,x2,x3,…,x100;要是1000个人,10000个人呢?1.数组的定义和使用什么是数组如何定义数组如何给数组赋值如何遍历与访问数组中的内容数组的用途多维数组1.1什么是数组数组是一组类型相同的变量的集合。数组中的每个元素的数据类型是相同的。数组的元素顺序地存储在连续的内存空间中。当要处理很多类型相同的数据时,可利用数组以避免在程序中定义大量的

2、变量。1.2数组的定义数组定义方法如下:数据类型数组名[数组元素个数]={数组元素初值};一些定义数组的例子:intscore[5];charcards[4]={‘a’,‘0’,‘r’,‘W’};floatpoint[2]={2.56,23.43};doubledistances[4];必须是整数常量可以省略数组元素一个数组由多个变量组成,每个变量称为数组元素。一个数组元素可以通过“数组名[下标]”形式来访问。例如:score[0],score[1],score[2]等等。这组变量在内存中是连续存放的,它们的下标从0开始计数。在数组中(设N是数组

3、的元素总数)第一个数组元素的下标是0,最后一个数组元素的下标是N-100000score[0]score[1]score[2]score[3]score[4]intscore[5];主存储器cards[0]‘a’‘0’‘r’‘W’cards[1]cards[2]cards[3]数组在内存中的布局charcards[4]={‘a’,‘0’,‘r’,‘W’};数组在内存中的布局主存储器point[0]……2.56point[1]23.43主存储器distances[0]0.0distances[1]0.00.00.0distances[2]dista

4、nces[3]floatpoint[2]={2.56,23.43};doubledistances[4];1.3数组元素的赋值与访问数组元素可以在定义时给定初始值,也可以在程序中给数组元素赋值。在给数组元素赋值时,可以把数组元素看作单个变量,例如:score[0]=67;score[3]=89;distance[2]=356.24;cards[0]='b';访问数组元素时不要越界!intnumber[10];number[10]=56;——下标越界对于数组number,合法的访问范围是:number[0],number[1],……,number[

5、9]当引用number[10]时,对于C语言来说,这是合法的,但是它所引用的却是number数组之外的其他内存区域,其内的值是未知的;如果对其进行修改的话,还可能影响整个程序的正确性。567890123410(?)?numbernumber[10]1.4数组的遍历可以用一个循环语句给数组的所有元素赋值,或顺序访问它的每个元素。例如:inti;intstudent[100];intodd=0,even=0;for(i=0;i<100;i++){scanf(“%d”,&student[i]);}for(i=0;i<100;i++){if((stude

6、nt[i]%2)==0){even++;}else{odd++;}}输入100个整数,统计其中的偶数个数和奇数个数。1.5数组的应用当程序要处理一组类型相同、含义类似的数据时应该使用数组例10.1程序阅读理解#includeintmain(){intu[4],a,b,c,x,y,z;scanf(“%d%d%d%d”,&u[0],&u[1],&u[2],&u[3]);a=u[0]+u[1]+u[2]+u[3]-5;b=u[0]*(u[1]-u[2]/u[3]+8);c=u[0]*u[1]/u[2]*u[3];x=(a+b+2)*3

7、-u[(c+3)%4];y=(c*100-13)/a/(u[b%3]*5);if((x+y)%2==0){z=(a+b+c+x+y)/2;}z=(a+b+c-x-y)*2;printf(“%d”,x+y-z);return0;}例10.2给定一个正整数n(n>2),求出所有小于n的质数。#include#defineNUMBER100intmain(){intprime[NUMBER];inti,j,k;prime[0]=2;for(i=3,j=1;i

8、]i){prime[j]=i;j+

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

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

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