数组
1、定义: 数组是有序的并且具有相同类型的数据的集合。
2、特征: ①若干 ②相同类型 ③长度 ④有序
3、根据数组的下标个数的不同可分为: 一维、二维、多维
4、按数组元素的类型不同可分为: 数值数组、字符数组、指针数组、结构数组
一维数组
1、一般形式: 类型符 数组名[常量表达式](类型符:任一种基本数据类型或构造数据变量;数组名:用户定义的数组标识符;常量表达式:表示数据元素的个数,也称数组的长度)
2、常量表达式中不允许包含变量,可以包含常量或符号常量。
3、数组元素下标可以是任何整型常量、整型变量或任何整型表达式。
下标不可以越界:0~n-1
数组名中存放的是一个地址常量,代表整个数组的首地址。同一数组中的所有元素,按其下标的顺序占用一段连续的存储单元。
一维数组初始化
1、可以对数组元素赋值,数组元素也可以参与运算,与简单变量一样使用。
2、使用数值型数组时,不可以一次引用整个数组,只能逐个引用元素。
3、需要整体赋值时只可以在定义的同时整体赋值。
4、可以只给一部分元素赋值。
5、对全部数组元素赋值时可以不指定数组长度。
【例题1】
对10个数组元素依次赋值为0,1,2,3,4,5,6,7,8,9,要求按逆序输出
解题思路: 数组可以定义为整数,要赋的值是0~9,有一定的规律,可以用循环来赋值。
编写程序:
#include <stdio.h>
int main ( )
{
int i,a[10];
for(i=0;i<=9;i++)
a[i]=i;
for(i=9;i>=0;i--)
printf("%d",a[i]);
printf("\n");
return 0;
}
运行结果:
9 8 7 6 5 4 3 2 1 0
【例题2】
有10个地区的面积,要求对它们按由小到大的顺序排列
解题思路: 这种问题称为排序(sort)。排序的规律有两种:一种是升序,另一种是降序。本例题采用“冒泡法”,即较大的数往下沉,较小的数往上浮,通过循环不停地实现排序。
编写程序:
#include <stdio.h>
int