c语言第六章-数组

c语言第六章-数组

ID:36322274

大小:581.00 KB

页数:53页

时间:2019-05-09

c语言第六章-数组_第1页
c语言第六章-数组_第2页
c语言第六章-数组_第3页
c语言第六章-数组_第4页
c语言第六章-数组_第5页
资源描述:

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

1、第6章数组整型基本类型:实型字符型、枚举类型数组类型构造类型:结构体类型公用体类型指针类型空类型C语言的数据类型什么是构造类型?所谓构造类型是指由基本类型数据按一定的规则组成的,是用户自己按规则定义的。数组是构造类型之一。什么是数组?在数学中我们学过数列、矩阵的概念,数列通常表示为:a1、a2、a3、….、an矩阵通常表示为:a11a12a13a14a21a22a23a242×4在C语言中表示数组和矩阵的方法是:数组:a[0]、a[1]、a[2]、a[3]、a[4]、a[5]其中a:称为数组名。方括号中的数

2、:称为下标下标是一个数时,也就是数列,称为一维数组。下标是两个数时,也就是矩阵,称为二维数组。还有三维、四维数组等例如:有五名学生的一组学号:2004035012、2004035013、2004035014、2004035015、2004035016。如果用数组来表示的话可以用统一的数组名比如:num,用下标区别每个变量。即num[0]、num[1]、num[2]、num[3]、um[4]表示一个学号数组。一维数组在内存的存储形式:num就是数组存储区域的首地址,即num=200。一组变量num200num

3、[0]num[1]num[2]num[3]num[4]204208212216200403501220040350132004035014200403501520040350166.1一维数组的定义和引用2、一维数组的引用数组必须先定义,后使用只能逐个引用数组元素,不能一次引用整个数组数组元素表示形式:数组名[下标]其中:下标可以是常量、变量或表达式。例inta[10];scanf(“%d”,a);必须inta[10];for(j=0;j<10;j++)scanf(“%d”,&a[j]);例如:intk=5

4、;a[1]、a[1+5]、a[k]、a[10-k]()(√)3、一维数组元素值的输入与输出例如:main(){inti,a[10];for(i=0;i<10;i++)scanf(“%d”,&a[i]);for(i=0;i<10;i++)printf(“%d”,a[i]);}一维数组元素的输出一维数组元素的输入例6.1#includevoidmain(){inti,a[10];for(i=0;i<10;i++)a[i]=i;for(i=9;i>=0;i--)printf(“%2d”,a[i

5、]);printf(“”);}结果:ㄩ9ㄩ8ㄩ7ㄩ6ㄩ5ㄩ4ㄩ3ㄩ2ㄩ1ㄩ0_使用数组定义和数组元素时的几点注意:1、把数组定义时方括号中的数和元素下标值区别开,数组定义时方括号中的数表示数组含有的元素个数元素下标值是标识具体的数组元素的。方括号中的数不能是变量,只能是常量。2、数组元素的下标可以是常量,也可以是变量,其值必须是非负数,如果是小数,系统自动取整。3、数组必须先定义后使用。4、系统不检查数组元素下标的越界问题。5、一维数组元素的输入、输出使用单层循环语句。4、一维数组的初始化在定义数组时,

6、为数组元素赋初值(在编译阶段使之得到初值)说明:数组不初始化,其元素值为随机数当全部数组元素赋初值时,可不指定数组长度如inta[5]={6,2,3};等价于:a[0]=6;a[1]=2;a[2]=3;a[3]=0;a[4]=0;如inta[3]={6,2,3,5,1};()只给部分数组元素赋初值inta[]={1,2,3,4,5,6};编译系统根据初值个数确定数组维数值inta[5]={1,2,3,4,5};等价于:a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5;初始化方式例6.2

7、用数组求Fibonacci数列前20个数#includemain(){inti;intf[20]={1,1};for(i=2;i<20;i++)f[i]=f[i-2]+f[i-1];for(i=0;i<20;i++){if(i%5==0)printf("");printf("%12d",f[i]);}}分析:(1)定义一个含有20个元素的数组f,即intf[20];其中f[0]=1,f[1]=1,f[n]=f[n-1]+f[n-2](n≥2)(2)用一个循环结构:让循环变量i从2到19

8、,循环体为f[i]=f[i-1]+f[i-2]程序如右面所示:例用冒泡法对8个数排序(输入时数据无次序,输出按升序)排序过程:首先把八个数放到数组a[9]中。a[1]=38、a[2]=49、a[3]=65、a[4]=76、a[5]=13、a[6]=27、a[7]=30、a[8]=97。(1)比较第一个数与第二个数,若为逆序a[1]>a[2],则交换值;然后比较第二个数与第三个数,若为逆序a[2]>a[3],则交换

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

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

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