内容正文:
第4章 数组
数组概述
任务一
二维数组
任务二
字符数组
任务三
任务一 数组概述
阶段1 数组类型说明
阶段2 数组元素的表示方法
阶段1 数组类型说明
在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。
阶段2 数组元素的表示方法
数组元素是组成数组的基本单元。数组元素也是一种变量, 其标识方法为数组名后跟一个下标。 下标表示了元素在数组中的顺序号。数组元素的一般形式为:
<数组名>[<下标>]
其中的下标只能为整型常量或整型表达式。如为小数时,C编译将自动取整。
任务二 二维数组
阶段1 二维数组类型说明
阶段2 二维数组元素的表示方法
阶段3 二维数组的初始化
阶段1 二维数组类型说明
二维数组类型说明的一般形式是:
类型说明符 数组名[常量表达式1][常量表达式2]…;
其中,常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度。
阶段2 二维数组元素的表示方法
二维数组的元素也称为双下标变量,其表示的形式为:
数组名[下标][下标]
其中下标应为整型常量或整型表达式。例如:a[3][4] 表示a数组三行四列的元素。下标变量和数组说明在形式中有些相似,但这两者具有完全不同的含义。 数组说明的方括号中给出的是某一维的长度,即可取下标的最大值; 而数组元素中的下标是该元素在数组中的位置标识。
阶段3 二维数组的初始化
二维数组初始化也是在类型说明时给各下标变量赋以初值。 二维数组可按行分段赋值,也可按行连续赋值。
例如,对数组a[5][3]:
1.按行分段赋值可写为:
static int a[5][3]={ {80,75,92},{61,65,71},{59,63,70},{85,87,90},{76,77,85} };
阶段3 二维数组的初始化
2.按行连续赋值可写为:
static int a[5][3]={ 80,75,92,61,65,71,59,63,70,85,87,90,76,77,85 };
这两种赋初值的结果是完全相同的。
任务三 字符数组
阶段1 字符数组类型
阶段2 字符串常用函数
阶段3 程序举例
阶段1 字符数组类型
字符数组类型说明的形式与前面介绍的数值数组相同。例如,char c[10]; 由于字符型和整型通用,也可以定义为int c[10]但这时每个数组元素占2个字节的内存单元。 字符数组也可以是二维或多维数组,例如: char c[5][10];即为二维字符数组。
阶段2 字符串常用函数
C语言提供了丰富的字符串处理函数, 大致可分为字符串的输入、输出、合并、修改、比较、转换、复制、搜索几类。 使用这些函数可大大减轻编程的负担。用于输入输出的字符串函数, 在使用前应包含头文件"stdio.h" ;使用其他字符串函数则应包含头文件"string.h"。
阶段3 程序举例
把一个整数按大小顺序插入已排好序的数组中。
$$