C语言-数组
数组是具有同一属性的若干个数据组织成一个整体,互相关联
数组是有序数据的集合。数组中的每一个元素都属于同一个数据类型,用一个统一的数组名和下标来唯一地确定数组中的元素
一维数组
一维数组的定义
在定义数组时需要指定这批变量的类型、数组名称和数组中包含多少个元素
定义一维数组:
类型符 数组名[常量表达式];
例:
int a[10];
在定义数组时,需要指定数组中元素的个数,方括号中的常量表达式用来表示元素的个数,即数组的长度。
例如a[10],表示a数组有10个元素
即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]
常量表达式可以是常量和符号常量,不能是变量
引用一维数组的元素
#include <stdio.h> int main() { int i,a[10]; //定义整型变量i和整型数组a,a中有10个元素 for(i=0;i<=9;i++) //对10个数组元素进行赋值 a[i] = i; for(i=0;i<=9;i++) printf("%d\n",a[i]); return 0; }
运行结果
遍历了一维数组a[10]中的元素
一维数组的初始化
1.在定义数组时对全部数组元素赋初值,例:
int a[5] = {1,2,3,4,5}
2.只给部分元素赋值,例:
int a[10] = {1,2,3,4}
定义a数组有10个元素,但大括号里只有4个元素,所以只对前面4个元素赋初值,后面的元素初值自动设为0
3.可以在定义数组时不指定数组长度,根据数据的数量来确定数组的长度
int a[] = {1,2,3,4,5}
二维数组
二维数组的定义
定义二维数组:
类型名 数组名[常量表达式][常量表达式];
第一个常量表达式为行数,第二个常量表达式为列数
例:
int a[5][6];
定义了一个名为a的数组,为5行6列
二维数组的初始化
1.分行给二维数组赋初值
int a[2][3] = {{1,2,3},{4,5,6}};
给2行3列的二维数组a赋初值,第一行为1,2,3,第二行为4,5,6
2.统一赋初值
int a[2][3] = {1,2,3,4,5,6};
把这6个元素按顺序赋值给数组a
不指定特定的长度统一给元素赋初值
int a[][3] = {1,2,3,4,5,6};
只指定了3列,一共有6个元素,所以系统会把行数确定为2
3.给部分元素赋初值
int a[2][3] = {{1},{4,5}};
对指定的元素赋初值,其它的元素的值都默认为0