C语言笔记8(二维数组)(字符数组)
二维数组的定义
定义二维数组的一般方式:
类型说明符 数组名[常量表达式1] [常量表达式2];
存储形式:
二维数组在内存中按行的顺序存放,即先存放第一行的元素,在存放第二行的元素。
二维数组的引用
二维数组的引用与引用一维数组元素一样,也用下标法引用二组数组元素
二维数组元素表示形式:数组名[下标1] [下标2]
下标1和下标2是整型常量、整型变量或整型表达式。其编号从0开始的。
注意下标不要越界!
字符数组的定义:
用来存放字符数据的数组是字符数组。C语言用字符数组存放字符串,字符数组中的各个元素依次存放字符串的各字符。
格式:char 数组名[常量表达式]
说明:
1)初值的个数不能超过数组元素的个数,否则语法错误
2)初值的个数小于数组长度,系统自动添入结束符''
3)初值的个数与数组元素相等,定义时刻省略长度
4)因字符串常量自动加\0,因此常人为地在字符数组后加一个 ’ \ 0'
说明:
1)
将字符串存储到字符数组中,字符串和第一个‘\ 0'构成有效字符串。对字符串的操作,就是对字符数组的操作。
2)普通数组中的元素是确定的,一般用下标控制循环;而字符串使用结束符’\ 0'来控制循环。
6)strlen(字符数组)测试字符数组的长度(不包括\ 0");
7)strlwr(字符串)将大写字符串变小写字符串。
8)strupr(字符串)将小写字符串变成大写字符串。
字符数组的输入输出:
1.单字符输入输出(用格式符%c或字符输入函数)
2.字符串整体或部分输入输出(用格式符%s)
char a[7];
scanf("%s",a);
说明:输入输出项必须是以字符串的地址形式出现;
也可以是字符串常量:printf("%s\n","abcd");
只能输入不包括空格、\t和\n的字符串;
若要输入空格,用gets函数;
数组名前不加&符号。