目录
数组小概念:
- 数组是一组有序数据的集合;
- 用一个数组名和一个下标来唯一确定数组中的元素,如arr[8]代表数组中第9个数据(注意数组元素下标从0开始);
- 数组中每一个元素都属于同一个数据类型;
- 数组一般用来处理大批量的数据;
数组的定义和引用:
- 数组的定义: 例如: int a[10]; 定义了一个整形数组,数组名为a,数组内有10个元素; 定义一维数组的一般形式为: 类型符 数组名[常量表达式]
- 数组名的命名规则和变量名相同,遵循标识符命名;
- 定义数组时 ,指定元素个数,[]中的表达式表示元素个数,即数组长度;
- a[10]中含有10个元素,下标从0开始,依次是a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7]a[9],不存在数组a[10];
- 表达式中可包含常量和符号常量,int a[8+2]是合法的;不能包含变量,iint a[n]不合法;
- 如果指定数组为静态存储方式,则为不可变长数组;如: static int a[2*n];
数组的引用
- 引用数组形式: 数组名 [下标]
- 如: int a[8];//定义了一个数组; i = a[3];//表示引用了a数组中下标为3的元素;
数组小题:
对10个元素进行一次赋值为0,1,2,3,4,5,6,7,8,9,然后按照逆序输出;
- 程序分析:
- 首先定义一个长度为10的数组,然后利用循环进行赋值;
- 输出时,按照下标从大到小输出这10个元素;
- 两个for循环,第一个进行a[0]~a[9]值为0~9的赋值;
- 第二个for循环按照从大到小逆序输出各元素的值;
- 代码如下:
-
#include<stdio.h> int main() { int i, a[10]; for (i = 0; i < 10; i++) { a[i] = i; } for (i = 9; i >= 0; i--) { printf("%d\n",a[i]); } return 0; }
2.程序运行结果:
一维数组初始化:
- 定义数组时,也可以对全部元素赋值,成为数组的初始化,可以用"初始化列表"实现;
- 例如: int a[10]={0,1,2,3,4,5,6,7,8,9};
- 可以只给元素部分赋值,例如 int a[5]={0,1,2};表示只给数组元素前3个赋值,系统自动给后几个赋值为0;
- 数组全部赋值为0: int a[6]={0,0,0,0,0,0}; 或者: int a[6]=0;
- 全部数组赋值时,可以不指定长度,如: int [] ={1,2,3,4,5};