1.1数组的基本概念及其定义
在程序设计中,为了方便处理,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。
(1)对于同一个数组,其所有元素的数据类型都是相同的。
(2)数组名的书写规则应符合标识符的书写规定。
(3)数组名不能与其他变量名相同。
(4)方括号中的常量表示数组元素的个数,旗下标从0开始计算。
(5)允许在同一个类型说明中,说明多个数组分多个变量。
1.2数组的使用
数组定义的时候作为一个整体定义的,但是用的时候不能作为整体来使用,使用时,必须拆开使用数组中的各个元素。
比如,数组 int a[10]={1,2,3,4,5};使用其中的元素时,需用a[0],a[1]..a[94]表示,[]是数组的标志,[]中的数字表示数组的下标,也叫索引。下标是0代表数组的第一个元素,1代表第二个,以此类推。
1.2.1数组类别
一维数组:类型说明符 数组名[常量表达式]={值,值,值,值};例:int a[4]={1,2,3,4,};
二维数组:对于二维数组它有多种的输出书写方式。数组类型 数组名[数组长度][数组长度];例:
int a[4][2]={{12,14},{11,19},{14,15},{17,15}};
int a[4][2]={12,14,11,19,14,15,17,15};
int a[4][2]={{12},{11,19},{14,0},{0,15}};
int a[][2]={12,14,11,19,14,15,17,15};
多维数组:多重数组就像结构体可以嵌套一样,数组也可以,一个数组的元素可以是另一个数组,这样就构成了多重数组。
例:
#include "stdafx.h"
void print_day(int day)
{
char days[8][10]={"","Modnay","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
if(day<1||day>7)
{
printf("Illegal day number! \n");
return;
}
printf("%s\n",days[day]);
}
int _tmain(int argc, _TCHAR* argv[])
{
print_day(2);
return 0;
}
字符型数组: 用来存放字符量的数组称为字符数组;例:
char a[7]={'a','c','s','f','h','t','u'};
char a[]={'a','c','s','f','h','t','u'};
char a[7]="c porgram";
例:
int _tmain(int argc, _TCHAR* argv[])
{
int i,j;
char a[][5]={{'S','A','X','C','V'},{'C','Q','D','K','O'}};
char c[]="C porgram";
for(i=0;i<2;i++){
for(j=0;j<5;j++)
printf("%c",a[i][j]);
printf("\n");
}
for(i=0;i<9;i++){
printf("%c\t",c[i]);
}
printf("\n%s",c);
return 0;
}