欢迎来到天天文库
浏览记录
ID:59195292
大小:314.50 KB
页数:56页
时间:2020-09-26
《第09章 数组(培训)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第九章数组9.1一维数组数组是有序数据的集合。数组中的每一个元素都属于同一个数据类型。用一个统一的数组名和下标来唯一地确定数组中的元素。什么是数组呢?a[0]a[1]…a[9]分配内存2.在内存分配若干连续空间给数组.9.1.1一维数组的定义1.类型说明符数组名[常量表达式];例:inta[8];floatb[20],c[15];(1.数组名遵循标识符命名规则;(2.常量表达式用方括弧括起来,也可以是符号常量;(3.常量表达式为数组元素个数,即数组长度;其值从0开始.(4.数组类型为数组中每一个元素
2、类型3.说明:例如:/*以下是一个典型的错误定义方式!*/intn;scanf(“%d”,&n);inta[n];Double指明数组元素的类型arrary[22]指明数组名指明数组元素个数1.数组同变量一样,必须先定义后引用。2.引用数组元素的方法是:数组名[下标]可以是整型常量或整型常量表达式最小值:默认为0最大值:数组元素个数-1.9.1.2一维数组的引用例如:inta[8],i=1,j=2;错误:a[8];(越界)合法的引用方式:a[0];a[7];a[i];a[i+j];例如:有定义int
3、a[10];数组元素引用举例/*可以引用元素的从a[0]到a[9]*/a[5]=6;a[7]=a[5]++;a[6]=3;a[0]=a[5]+a[7]-a[2*3];注意:一个数组元素实质上就是一个变量名,代表内存中的一个存储单元。一个数组占用连续的存储单元。(2)C语言中,一个数组不能整体引用(如不能对数组进行整体的输入输出)【例9-1】输入10个整数,分别按顺序和逆序输出。#include#defineM10voidmain(){inti,a[M];printf("input1
4、0numbers:");for(i=0;i=0;i--)printf("%d",a[i]);}程序的运行情况:input10numbers:12345678910↙12345678910109876543211.初始化--在定义数组时对数组元素赋初值;2.初始化方法:数组类型数组名[数组长度]={数
5、组元素值};9.1.3一维数组的初始化①给全部元素赋初值inta[5]={0,1,2,3,4};②可以只给一部分元素赋初值;floatb[5]={1.4,7.2};charc[5]={‘\’};③在对全部数组元素赋初值时,可以不指定数组长度。inta[]={1,2,3};注意数组不进行初始化时,如果是数值类型数组(如整型、实型)默认值为0;如果是字符型数组默认值为空字符’ ’(ASCII码为零的字符)。Charc[5]={‘@’,‘ ’}数组的输入输出定义数组输入/赋值运算输出基本方法【例9-
6、2】分析下面程序的运行结果。#include”stdio.h”voidmain(){inti,a[5];intc[5];for(i=0;i<5;i++)printf(”%d”,a[i]);printf(””);for(i=0;i<5;i++)printf(”%d”,c[i]);}程序运行情况:81601312200000000[例9.2]利用数组,求斐波拉契数列的前10项。定义数组计算输出voidmain(){inta[10]={1,1}inti;for(i=2;i<10;i++)a[i]=a[
7、i-1]+a[i-2];for(i=0;i<10;i++)printf(”%d”,a[i]);}#include”stdio.h”[例5.3]编写求一个含30个元素的int型数组,依次赋值1,3,5,。。。。,然后每行10个顺序输出,最后再每行10个逆序输出#include”stdio.h”#defineN30voidmain(){}Ints[N],i,k=1;for(i=0;i8、=0;i--)printf(“%3d%c”,s[i],(i%10==0)?’’:’’);printf(“”);历年计算机等级考试习题1、若要求定义具有10个int型元素的一维数组a,则以下定于语句错误的是()《2006.9》a、#definen10inta[n];b、i
8、=0;i--)printf(“%3d%c”,s[i],(i%10==0)?’’:’’);printf(“”);历年计算机等级考试习题1、若要求定义具有10个int型元素的一维数组a,则以下定于语句错误的是()《2006.9》a、#definen10inta[n];b、i
此文档下载收益归作者所有