数组
数组定义:是集合中的一种,也是一种数据类型,用于批量处理数据。
特点(是内存中的): 1. 连续的内存空间。(但利用率不高)
2. 只能存放同一数据类型。(不同的数据类型不能存放)
3. 数组空间大小声明后是不能改变的。(空间变化不行)
一维数组形式 :数据类型 数组名 [ 整型常量表达式];
一维数组初始化:数据类型 数组名 [ 整型常量表达式] = { 初始化数据 };
一维数组的引用:数组名[ 下标表达式]; (下标从0开始)
- 当初始化的值的个数小于数组给出的长度,则给出的值赋值给指定的位子,其它的默认为0。
- 在{ }给出各数组元素的初值,各初值之间用逗号隔开。
二维数组形式 :数据类型 数组名 [ 整型常量表达式][整型常量表达式];
二维数组初始化:数据类型 数组名 [ 整型常量表达式][整型常量表达式] = { 初始化数据 };
二维数组的引用:数组名 [ 下标][下标]; (下标从0开始)
- 可以省略第一维的定义,但不能省略第二维的。
- 下面这个程序就是运用数组:
/*
输入若干个0到9之间的整数,统计各整数的个数
*/
#include <stdio.h>
#define N 100
void main()
{
int i, j, k;
int a[N];
int b[10]={}; //给b数组里的元素赋初值都为0
k = 0;
printf("请输入0到9的整数\n");
scanf("%d",&j);
//输入结束的判断条件
while( j>=0 && j<=9)
{
a[k]=j;
k++;
scanf("%d",&j);
}
/*for( i = 0; i < 10; i++)
{
b[i]=0;
}
*/
// 统计各个数出现多少次
for( i = 0; i < k; i++)
{
b[a[i]]+=1;
}
for( i = 0; i < 10; i++)
{
printf("%d;%d\n",i,b[i]);
}
}