高级语言程序设计 第五章.doc

高级语言程序设计 第五章.doc

ID:56768781

大小:92.00 KB

页数:43页

时间:2020-07-08

高级语言程序设计 第五章.doc_第1页
高级语言程序设计 第五章.doc_第2页
高级语言程序设计 第五章.doc_第3页
高级语言程序设计 第五章.doc_第4页
高级语言程序设计 第五章.doc_第5页
资源描述:

《高级语言程序设计 第五章.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章数组(5月18日,第五次课)数组是一种组合类型的数据,数组中的每个元素都可以当作单个变量来使用。同一个数组中的所有数组元素的类型必须是相同的类型,可以是基本数据类型,也可以是指针类型,结构型等其他类型数据。数组元素的类型就是数组的类型。可以是:整型数组,实型数组,字符型数组,指针型数组,结构型数组。5.1一维数组5.1.1一维数组的定义一维数组的数据定义语句。【格式】:数据类型符数组名【长度】:例如:inta[8];int是数据类型符,a是数组名,8是数组长度,即该数组有8个元素,每个因素是一个整型变量,这8个整型变量分别是:a[0],a[1],…a[7]。【功能】:编译程序会为

2、数据分配存储单元,该数组占用一个连续的存储空间,其长度等于每个数据类型符表示的长度,乘以数组元素个数,即数组长度。数组名:表示数组占用的连续存储空间的开始地址。例如:a是数组名。而数组中的每个元素都可以当作单个变量来使用下标从0开始,第k个数组元素写成:数组名【k-1】,每个数组元素占用的存储空间等于数据类型符规定的长度。5.1.2一维数组元素的引用数组元素必须赋值,才能参加运算。在程序中,一维数组的每个元素的引用的方法是:数组名【下标】下标的合法值,从0开始,到(长度-1)。数组下标越界,程序运行结果不可预测。aa[0]a[1]..a[7]一维数组a[8]的内存分配,每个元素两个字节

3、,数组是16个字节例5-2:(P102)一维数组的定义,和引用。intx[4];/*定义数组,是为数组分配内存单元*/scanf(“%d,%d”,&x[1],&x[3],);/*用数组元素的内存单元接受键盘输入,为元素x[1],x[3]赋值。*/x[0]=10;/*为元素x[0]赋值*/x[2]=x[0]+x[1]+x[3];/*引用数组元素x[0],x[1],x[3],为x[2]赋值*/例5-3:shorty[2];合法的数组元素下标是:0,1。即y[0],y[1];例5-4:一维数组元素的赋值。inta[10]={1,2,3,4,5,6,7,8,9,10};longb[]={0L,

4、1L,2L,3L,4L,5L,6L,7L,8L,9L,10L};doublee1[10]={1.0,2.0,3.0},e2[2];/*定义有10个元素的双精度实型数组e1,和2个元素的双精度实型数组e2,其中e1的数组元素赋值如下:e1[0]=1.0;e1[1]=2.0;e1[2]=3.0,e1[3]=e1[4]=e1[5]…=e1[9]=0.0;而e2得所有元素没有赋初值。*/charc[10]={‘a’,’b’};/*定义有10个元素的字符型数组c,其中c[0]=’a’;c[1]=’b’;c[2]~c[9]均为空字符’’。*/例5-5:从键盘输入10个字符,然后按照相反次序输出

5、。voidmain(){chara[10];inti;for(i=0;i<10;i++)scanf("%c",&a[i]);/*每循环一次,接收一个字符,顺序存入数组*/for(i=9;i>=0;i--)/*按照相反次序输出*/printf("%c",a[i]);}例5-6求斐波拉契数列的前20项值,并输出。斐波拉契数列是如下的序列:1,1,2,3,5,8,13,21,34,55,第i个斐波拉契数为f[i],则斐波拉契数列中的数定义如下:f(0)=1,f(1)=1,…f(n)=f(n-2)+f(n-1)算法如下:用长度为20的整型数组f存放斐波拉契数列的前20项的值。并设:f[0]=

6、f[1]=1;控制循环的变量为n,n依次等于2,3,…19,用n作为数组f的数组元素的下标。voidmain(){/*f(0)=1,f(1)=1,f(n)=f(n-2)+f(n-1)*/intn,f[20]={1,1};/*f[0]=f[1]=1;f[2]~f[19]=0*/for(n=2;n<20;n++)f[n]=f[n-1]+f[n-2];/*为斐波拉契数组元素赋初值*/for(n=0;n<20;n++){if(n%5==0)printf("");/*每5个数值,光标移到下一行的开始位置*/printf("%10d",f[n]);/*每个元素在显示器上占用10位,右对齐,左边

7、补空格。*/}}例5-7:输入10个数存入数组,求其中最小数及其序号。算法如下:输入的10个数存放到数组x[0]~x[9]中,首先假设x[0]就是当前最小数,用min记录该数,同时用min_k记录其下标(0)。然后,设计一个次数循环,控制变量k依次等于1,2,…9,循环体中,对min和x[k]进行比较,若min>x[k],则重新记录当前最小数及其下标,最后得到的min就是最小数,min_k是最小数的下标,min_k+1就是序号。voidmai

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

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

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