一、
(1)数组是一组有序数据的集合,下标代表数据在数组中的序号
(2)数组中的每一个元素都属于同一个数据类型
(3)一维数组:int a[10] 它表示了一个整型数组,数组名为 a ,此数组包含了10个整型元素 定义一维数组的表达形式:
类型说明符 数组名 [ 常量表达式]
注:定义数组时用到的“数组名 [ 常量表达式] ”和引用数组元素时用的“数组名[下标]” 形式相同,但含义不同。例如:
int a[10]; // 前面有int ,这是定义数组,指定数组包含10个元素
t=a [6] ; //这里的 a [6] 表示引用a数组中序号为6的元素
二、初始化
(1)在定义数组时对全部数组元素进行赋值 列如:
int a[5]={1,2,3,4,5};
(2) 可以对数组中的一部分元素赋值 例如
int a[10]={1,2,3,4,5} ; //剩下的默认为0
(3)如果使一个数组中全部元素为0 例如
int a[5]={0,0,0,0,0}; 或 int a[5]={0};
(4)在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。例如:
int a[5]={1,2,3,4,5}; 可以写成 int a[ ]={1,2,3,4,5};
例题:对10个数组元素一次赋值为 0,1,2,3,4,5,6,7,8,9按逆序输出
#include
int main()
{
int i,a[10];
for(i=0;i<=9;i++) //对数组元素a[0]~a[9]赋值
a[i]=i;
for(i=9;i>=0;i--) //输出a[0]~a[9]共10个数组元素
printf("%d",a[i]);
printf("\n");
return 0;
}
三、定义二维数组及初始化
(1)二维数组的一般形式为:
类型说明符 数组名 [ 常量表达式] [ 常量表达式] ;
例如:float a [3] [4] ,b [5] [9] ;
赋初值
(1)分行给二维数组赋初值: int a [3] [4]={{1,2,3,4},{5,6,7,8},{9,10,11,12} } ;
(2) 按数组元素在内存中的排列顺序赋值: int a [3] [4]={1,2,3,4,5,6,7,8,9,10,11,12 } ;
(3)可以对部分元素赋初值: int a [3] [4]={{1},{5},{9} } ; //只对各行第一列的元素赋值,其他元素为0
(4)对各行中的某一元素赋值: int a [3] [4]={{1},{0,6},{0,0,11} } ;
初始化数组元素如下:
1 0 0 0
0 6 0 0
0 0 11 0
(5)如果对全部元素赋值,则定义的一维长度可以不指定,但二维长度不能省。例如:
int a [3] [4]={1,2,3,4,5,6,7,8,9,10,11,12 } ; 等价于
int a [ ] [4]={1,2,3,4,5,6,7,8,9,10,11,12 } ; //列号不能省,行号可以省
四、字符数组
(1)定义字符数组的方法与定义整型数组的方法类似。例如:
char a [5] ;
依次对元素赋值:char a [5] ={"I"," " ,"a","m"," ","h","a","p","p","y"} ;
(2)字符数组的输入输出 :逐个字符输出,用格式符 “%c” 输入或输出一个字符 或将整个字符串一次输入或输出。用格式符 “%s” ,意思是对字符串(string)的输入输出 。例如:
char c[ ] ={"china"};
printf("%s\n",c); // \n 代表换行
(3) puts 函数-----输出字符串的函数 其一般形式为 puts (字符数组) 例:puts (str) ;
用puts 函数输出的字符串可以包含转义字符。例如:
char str[ ] ={"china\n"}; puts (str) ;
(4)gets 函数-----输入字符串函数 其一般形式为 gets (字符数组) 例:gets (str) ;
(5)strcat 函数 -----字符串连接函数 其一般形式为 strcat(字符数组1,字符数组2) 例如:
char str1[30]={"I love "};
char str2[]={"china"};
printf("%s",strcat(str1,str2));
输出:I love china
(6)strcpy和strncpy函数-----字符串复制函数 其一般形式为 strcpy(字符数组1,字符串2)
(7) strcmp函数 ----字符串比较函数 其一般形式为 strcmp(字符串1,字符串2)
如果字符串1与字符串2相同,则函数值为0;
如果字符串1>字符串2,则函数值为一个正数;
如果字符串1<字符串2,则函数值为一个负数;
(8)strlen 函数 ----测字符串长度的函数 其一般形式为 strlen(字符数组)
(9)strlwr 函数---转换为小写的函数 其一般形式为 strlwr(字符串)
(10) strupr 函数---转换为大写的函数 其一般形式为 strupr(字符串)