资源描述:
《C语言程序设计 李学军 第6章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章数组主要内容一维数组的定义和引用二维数组的定义和引用字符数组与字符串数组应用举例核心知识点一维数组的定义及初始化方法二维数组的定义及初始化方法字符数组的定义、特点及初始化方法字符串处理函数的应用9/15/20211C语言程序设计第6章数组重点难点二维数组的定义及初始化方法数组在程序设计中应用技巧学习目标了解数组名、数组元素的基本概念和数组元素的组成理解数组元素在内存中的存储顺序掌握一维数组的定义及初始化方法掌握二维数组的定义及初始化方法掌握字符数组的定义、特点及初始化方法掌握字符串处理函数的应用掌握数组在程序设计中应用技巧9/15/20212C语言程
2、序设计6.1一维数组的定义和引用6.2二维数组的定义和引用6.3字符数组与字符串6.4数组应用举例在利用计算机解决实际问题时,常常需要处理大量的具有相同性质的数据,如一批商品的价格,一个企业的职工工资,一个班级的学生成绩等。处理这类数据时使用单个的基本类型的变量去描述显然是不合理的,因此,C语言提供了数组以描述这类数据。概述9/15/20213C语言程序设计一维数组是只有1个下标的数组。1.一维数组的定义形式:数据类型数组名1[常量表达式1][,数组名2[常量表达式2]…];例如:inta[10];定义了一个数组,数组名为a,有10个元素,这10个元素分别
3、是:a[0]、a[1]、a[2]、a[3]、a[4]、....、a[8]、a[9]。每个元素的类型均为int。2.说明:(1)“数据类型”是指数组元素的数据类型。即每一个数组元素的数据类型,包括整数型、浮点型、字符型、指针型以及结构体型和联合体型。例如:inta[10];/*定义整型数组a,共有10个元素*/floatb[20];/*定义单精度实型数组b,共有20个元素*/charc[5];/*定义字符型数组c,共有5个元素*/6.1一维数组的定义和引用9/15/20214C语言程序设计(2)数组名与变量名一样,必须遵循标识符命名规则。(3)“常量表达式”
4、必须用方括号括起来,表示数组的元素个数(又称数组长度),它是一个整型值,其中可以包含常数和符号常量,但不能包含变量。(4)数组元素的下标,是元素相对于数组起始地址的偏移量,从0开始顺序编号。(5)数组名中存放的是一个地址常量,它代表整个数组的首地址。同一数组中的所有元素,按其下标的顺序占用一段连续地址的存储单元。※注意:C语言不允许对数组的大小做动态定义,如下面做法是错误的:intn;scanf("%d",&n);inta[n];/*为错误定义数组,因为定义数组的常量表达式中包含了变量*/9/15/20215C语言程序设计3.数组元素的引用形式:数组名[下
5、标表达式]例如:a[0]=a[5]+a[7]-a[2*3];说明:(1)“下标表达式”可以是任何非负整型数据的常量,也可以是任何结果为非负整型数据的表达式,其取值范围是“0-(元素总个数-1)”。※注意:在运行C语言程序的过程中,系统并不自动检验数组元素的下标是否越界。因此在编写程序时,保证数组下标不越界是十分重要的。(2)1个数组元素,实质上就是1个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和参与各种运算。(3)在C语言中,数组作为1个整体,不能参加数据运算,只能对单个的数组元素进行处理,也就是说不能引用整个数组,而只能逐个引用数组元素。
6、9/15/20216C语言程序设计【例6-1】给数组元素a[0]~a[9]赋值为0~9,然后逆序输出。main(){inti,a[10];for(i=0;i<=9;i++)a[i]=i;for(i=9;i>=0;i--)printf(“%d”,a[i]);}注意数组下标是从0到9,a[10]并非该数组元素。9876543210运行结果为:对数组元素逐个赋值对数组元素逐个输出9/15/20217C语言程序设计4.一维数组的初始化数组初始化是指在定义数组时指定数组元素的初始值。一维数组初始化的一般格式:数据类型数组名[常量表达式]={初值表};可按以下方式进行
7、数组的初始化。(1)一般初始化,如:intarr[10]={0,1,2,3,4,5,6,7,8,9};(2)部分元素初始化,如:inta[10]={0,1,2,3,4};/*仅给前5个元素赋初值,后5个元素未指定初始值*/(3)全部元素均初始化为0时,不允许简写。如:inta[10]={0,0,0,0,0,0,0,0,0,0};不能简写为:inta[10]={0*10};9/15/20218C语言程序设计(4)如果全部元素均指定初值,则数组定义格式中的方括号内可以省略元素的个数,如:inta[5]={1,2,3,4,5};可以写为:inta[]={1,2,
8、3,4,5};说明:(1)如果对数组的全部元素赋以初值,定义时可以