本文目录
回到顶部
一、 数组的基本概念
一个int类型的变量能保存一个人的年龄,如果想保存整个班的年龄呢?
1. 什么是数组
数组,从字面上看,就是一组数据的意思,没错,数组就是用来存储一组数据的
2. 数组的特点
1>只能存放一种类型的数据,比如int类型的数组、float类型的数组
2>里面存放的数据称为“元素”
回到顶部
二、 数组的定义
1. 定义
1>声明数组的类型
2>声明数组的元素个数(需要多少存储空间)
2. 格式
元素类型 数组名[元素个数];
比如:int ages[3];
3. 简单使用
1>简单初始化:int ages[5] = {19, 19, 20, 21, 25};
2>元素有顺序之分,每个元素都有一个唯一的下标(索引),从0开始
3>数组元素的访问:a[i]
4. 初始化
1>初始化方式
1)int a[3] = {10, 9, 6};
2) int a[3] = {10,9};
3)int a[] = {11, 7, 6};
4)int a[4] = {[1]=11,[0] = 7};
2>常见错误
1)int a[];
2)int[4] a;
3)int a[b];
4)a = {10, 11};
5)a[4] = {10,9,8,5};
5. 内存分析
1>数组存储空间的大小
2>存储空间的划分(内存的分配是从高地址到低地址进行的,但一个数组内部元素又是从低到高进行的)
3>数组名的作用,查看元素地址
4>数组越界的注意
6. 其他使用
1>数组与函数参数
1)数组元素作为函数参数
2)数组作为函数参数(sizeof注意)
3)遍历数组元素
4)两种方式遍历(while循环和for循环)
5)遍历元素值和元素地址
6)字符数组的使用
7. 习题
1> 提示输入5个学生的成绩,算出平均分、最高分、最低分,然后输出
2> 设计一个函数:int arrayMax(int a[], int count),找出数组元素的最大值
3> 设计一个函数:int arraySum(int a[], int n),求一维数组a前n个数的和
4> 设计一个函数:将一维整型数组中的元素逆序存放。比如本来是1,3,4,2,逆序存放就变成了:2,4,3,1
回到顶部
三、 二维数组
1. 什么是二维数组
1>一个数组能表示一个班人的年龄,如果想表示很多班呢?
2>什么是二维数组?int ages[3][10]; 三个班,每个班10个人
3>相当于3行10列
4>相当于装着3个一维数组
二维数组是一个特殊的一维数组:它的元素是一维数组。例如int a[2][3]可以看作由一维数组a[0]和一维数组a[1]组成,这两个一维数组都包含了3个int类型的元素
2. 存储
1>存储大小
2>存储结构和顺序
3>存储地址问题
3. 初始化
1>int a[3][4] = {1,2,3,4,5,6};
2>int a[3][4] = {{},{},{}};
3>数组元素简单访问
4>int a[][5] = {3,21,31,2,32,1};
注意错误:
int a[3][4];
a[3] = {};
4. 遍历
1>遍历所有的元素
2>遍历地址
3>使用场合:五子棋、俄罗斯方块
回到顶部
四、 字符串
1. 什么是字符串
1>简单的字符串”itcast”
2>一个’i’是一个字符
3>很多个字符组合在一起就是字符串了
2. 字符串的初始化
1>char a[] = “123”; 和 char a [] = {‘1’,’2’,’3’};的区别,可以比较大小
2>“123”其实是由’1’、’2’、’3’、’