问题: ■如何处理一个班学生的学习成绩? ■一行文字怎样存储? ■一个矩阵怎样存储? 这些数据的特点:1、具有相同的数据类型 2、使用过程中需要保留原始数据 C语言为这些数据提供了一种构造数据类型:数组。 组具有相同数据类型的数据的 有序集合
◼ 如何处理 一个班学生的学习成绩? ◼ 一行文字怎样存储? ◼ 一个矩阵怎样存储 ?. 问题: 一组具有相同数据类型的数据的 有序集合 这些数据的特点:1、具有相同的数据类型 2、使用过程中需要保留原始数据 C语言为这些数据提供了一种构造数据类型:数组
第六章数组 重要思想方法 连续存放、类型相同、 变量可控 内存 m[0] m/7] ml1川 m2] 各元素变量 用下标控制各 名相同 元素的访问 m/99] ?特征应用:字符处理
第六章 数组 重要思想方法: 连续存放、类型相同、变量可控 m[0] m[1] m[2] m[99] m[2] 各元素变量 名相同 用下标控制各 元素的访问 内存 67345 ?特征应用:字符处理
数组的概念 例如:存储学生成绩用整型数组 mark[100], 存储一行文字用字符数组str[200], 存储一个4*6的矩阵用二维整型数组a[4][6]。 其中:mark、str、a是数组名。 方括号内是数组的长度。 下标的个数称为数组的维数,mark、str是一维数组、 a是二维数组。 数组的成员称为数组元素。 数组元素的类型称为该数组的基类型。数组mark的基 类型是int,数组str的基类型是char
其中:mark、str、a 是数组名。 方括号内是数组的长度。 下标的个数称为数组的维数,mark、str是一维数组、 a是二维数组。 数组的成员称为数组元素。 数组元素的类型称为该数组的基类型。数组mark的基 类型是int,数组str的基类型是char。 数组的概念 例如:存储学生成绩用整型数组 mark[100], 存储一行文字用字符数组 str[200], 存储一个4*6的矩阵用二维整型数组 a[4][6]
第大章 数组 ·构造数据类型之一 []数组运算符 ·数组:有序数据的集合,用数组名标识 单目运算符 ·元素:属同一数据类型,用数组名和下标确定优先级(1) §6.1 一维数组 左结合 不能用() ★一维数组的定义 必定义方式: 数据类型 数组名[常量表达式]; 例 int a[6]; 合法标识符 表示元素个数 a a0] 下标从0开始 a[1] a[2] 编译时分配连续内存 a[3] 数组名表示内存首地址, 内存字节数=数组维数* 是地址常量 a[4] sizeof元素数据类型) a[]
第六章 数组 •构造数据类型之一 •数组:有序数据的集合,用数组名标识 •元素:属同一数据类型,用数组名和下标确定 §6.1 一维数组 一维数组的定义 ❖定义方式: 数据类型 数组名[常量表达式]; 合法标识符 表示元素个数 下标从0开始 [ ] :数组运算符 单目运算符 优先级(1) 左结合 不能用( ) 例 int a[6]; 0 a[0] 1 4 5 a[1] a[2] a[3] a[4] a[5] 2 3 a 编译时分配连续内存 内存字节数=数组维数* sizeof(元素数据类型) 数组名表示内存首地址, 是地址常量
例 int data[5]; data[5]=10; /C语言对数组不作越界检查,使用时要注意 冬数组必须先定义,后使用 》只能逐个引用数组元素,不能一次引用整个数组 公数组元素表示形式:数组名[下标] 其中:下标可以是常量或整型表达式 例 int a[10]; printf("d",a); (x) 必须 forj=0j<10:j++) printfd\t”,a[j]);
一维数组的引用 ❖数组必须先定义,后使用 ❖只能逐个引用数组元素,不能一次引用整个数组 ❖数组元素表示形式: 数组名[下标] 其中:下标可以是常量或整型表达式 例 int i=15; int data[i]; (不能用变量定义数组维数) 例 int a[10]; printf(“%d”,a); () 必须 for(j=0;j<10;j++) printf(“%d\t”,a[j]); () 例 int data[5]; data[5]=10; //C语言对数组不作越界检查,使用时要 注意