1.数组的基本概念
在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。 在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。
2.与数组相关的概念
数组: 一组具有相同数据类型的数据的有序的集合 数组元素: 构成数组的数据。数组中的每一个数组元素具有相同的名称,不同的下标,可以作为单个变量使用,所以也称为下标变量。 数组下标: 是数组元素的位置的一个索引或指示。入 数组维数: 数组元素下标的个数。根据数组的维数可以将数组分为一维、二维、三维、多维数组。 按存储的内容分类: 数值数组、字符数组、指针数组、结构体数组
3.数组的定义和初始化
数组初始化赋值是指在数组定义时给数组元素赋予初值。数组初始化是在编译阶段进行的。这样将减少运行时间,提高效率。 初始化方式有两种:定义的同时初始化、先定义,后初始化 a.指定元素的个数的同时,对所有的元素进行显式的初始化 b.指定数组的元素个数,对数组进行部分显式初始化 c.不指定元素个数,定义的同时初始化
4.一维数组的引用
数组元素是组成数组的基本单元。 数组元素也是一种变量,其标识方法为数组名后跟一个下标。 其中下标只能为整型常量或整型表达式。如为小数时,C编译将自动取整。数组元素通常也称为下标变量。必须先定义数组,才能使用下标变量。 —维数组的遍历:通过循环访问数组的每一个元素
5.一维数组的存储方式
1)计算机会给数组分配一块连续的存储空间 2)数组名代表数组的首地址,从首地址位置,依次存入数组的第1个、第2个....、第n个元素 3)每个元素占用相同的字节数(取决于数组类型)4)数组中元素之间的地址是连续的 5)数组名存放的是数组的首地址
6.数组作为函数参数
1、数组元素作为函数参数 2、数组名作为函数参数 (1)用数组元素作函数参数不要求形参也必须是数组产素,但是用数组名作函数参数时,则要求形参和相对应的实参都必须是类型相同的数组。 (2)当数组名作为函数参数时,实参和形参之间不是值传递,而是地址传递,实参数组名将该数组的其实地址传递给形参数组,两个数组共享一段内存单元,形参不再为形参数组分配存储单元。 (3)当数据做函数参数时,所进行的值是单向传送的,即形参的值发生改变并不会影响实参的值。
7.使用字符串处理函数
注意:在使用字符串处理函数时,应当在程序文件的开头用#include <string. h>
-
puts函数——输出字符串的函数
一般形式为:
puts(字符数组);
char str[] = {"china\nX-jiang"}; pust (str);
-
gets函数——输入字符串的函数
其一般形式为:
gets(字符数组)
gets(str);
-
strcat函数——字符串连接函数
其一般形式为:
strcat(字符数组1,字符数组2);
char str1[30] = {"People's Republic of"}; char str2[] = {"China"}: printf("%s",strcat(strl,str2);
-
strcpy和strncpy函数——字符串复制函数
一般形式为:
strcpy(字符数组1,字符数组2)
char str1[10],str2[]="china"; strpy(str1,str2);
-
strcmp函数——字符串比较函数
一般形式为:
strcmp(字符串1,字符串2)
strcmp(str1,str2);
比较的结果由函数值带回。 (1)如果字符串1一字符串2,则函数值为0。 (2) 如果字符串1>字符串2,则函数值为-一个正整数。
(3)如果字符串1<字符串2,则函数值为一个负整数。
-
strlen函数——测字符串长度的函数
一般形式:
strlen(字符数组)
char str[10] = "china"; printf("%d",strlen(str));
-
strlwr函数——转换为小写的函数
一般形式:
strlwr(字符串)
-
strupr函数——转换为大写的函数
一般形式:
strupr(字符串)