今天主要学习了数组的相关知识:
一、一维数组的概念
数组: 一组相同类型的数据的集合,
语法:
类型说明符 数组名[常量表达式];eg:int a[10]
注意:(1)数组名
代表着 数据集合 (内存空间的一个名字)
数据类型角度
1. a代表整个数组类型
2. a代表一个值 --数组首元素的地址
(2)数组本身也是一种数据类型。
int[10] a; //a所代表的类型 int[10]
//a数组名 标识符
//a ---把名字去掉 ,剩下的就是名字对应的数据类型
//数组元素的访问
语法:
a[下标]; //0 开始的
//1
数组下标:
本质上是 偏移量
数组的特点:
1.连续性 --一片连续空间
2.有序性 --元素依次存储
3.单一性 --单一类型的元素
二、数组的初始化
int a[10] = {1,2,3,4,5,6,7,8,9,10}; //全部初始化
int a[10] = {1,2,3,4,5}; //部分初始化--依次给到数组元素 ,没有给值的元素,默认初始化为0
将数组初始化为0
int a[10] = {}; //都初始化为0
int a[10] = {0}; //都初始化为0
数组不初始化 ---数组中为垃圾值
注意:数组长度可以省略
有前提 --必须要有初始化的值
int a[] = {1,2,3}; //编译器会通过值来计算机 数组长度
三、数组的应用
1.选择排序法:选择一个位置,为其选择合适的数,即依次选择一个位置,然后将该位置与其后位置的数进行比较,谁小谁就放到该位置。两个循环,外部循环从第一个位置开始,内部循环从下一个位置与它进行比较,不断重复,从而进行排序。
2.冒泡排序:他与选择排序不同的是它主要是相邻两个数进行比较,小的放前面。