第7章 字符串—补充案例

博学谷——让IT教学更简单,让IT学习更有效

第7章 字符串

案例7-1 探究字符数组的本质 一、案例描述

1、 考核知识点

编号:00607001

名称:探究字符数组的本质 2、 练习目标

? 了解字符数组的本质 ? 掌握字符数组的用法

3、 需求分析

字符数组就是由字符类型的元素组成的数组。为了加深读者对字符数组的理解,本案例将定义一个字符数组,并遍历打印数组元素的值。 4、 设计思路(实现原理) 1)声明main()函数。

2)在main()函数中,定义一个字符数组,并遍历打印数组元素的值。

二、案例实现

编写程序,代码如下:

1 #include 2 void main() 3 { 4 5 6 7 8 9 10 11 12 }

char c[5] = {'h', 'e', 'l', 'l', 'o'}; int i;

for (i = 0; i < 5; i++) { }

printf(\getchar();

printf(\

运行结果如图7-1所示。

1

博学谷——让IT教学更简单,让IT学习更有效

图7-1 运行结果

三、案例总结

1、从图7-1中可以看出,字符数组c中的元素被依次输出了。由此可见,通过数组下标的方式,可以实现字符数组元素的访问。

2、代码第4行定义了一个字符数组,该数组在内存中的状态如图7-2所示。

c[0]hc[1]ec[2]lc[3]lc[4]o 图7-2 字符数组c的元素分配情况

3、用printf()函数输出字符时,应使用“%c”格式控制字符。

4、当字符数组中的初值个数小于数组长度时,没有赋值的元素会默认赋值为空字符“\\0”。

案例7-2 探究字符串的本质 一、案例描述

1、 考核知识点

编号:00607002

名称:探究字符串的本质 2、 练习目标

? 了解字符串的本质 ? 掌握字符串的用法

3、 需求分析

为了便于对字符数组进行初始化操作,可以直接使用一个字符串常量来为一个字符数组赋值。为了加深初学者对字符串的理解,本案例将用字符串初始化一个字符数组,遍历并打印字符数组的元素。 4、 设计思路(实现原理) 1) 声明main()函数。

2) 在main()函数中定义一个字符数组,并用字符串初始化。 3) 遍历字符数组并打印数组的元素。

2

博学谷——让IT教学更简单,让IT学习更有效

二、案例实现

编写程序,代码如下:

1 #include 2 #include 3 void main() 4 { 5 6 7 8 9 10 11 12 13 14 }

char string[] = \int i, strsize;

strsize = sizeof(string); printf(\for (i = 0; i < strsize; i++) { }

getchar();

printf(\

运行结果如图7-3所示。

图7-3 运行结果

三、案例总结

1、在该案例中,定义了一个字符数组array,该字符数组中保存的是字符串“hello”。从图7-3中可以看出,字符数组array输出了6个字符,并且最后一个字符是空字符‘\\0’。

2、代码第7行,通过sizeof运算符获取变量array在内存中占了多少个字节。因为char类型的变量在内存中占1个字节,所以便可知道字符串“hello”在内存中的大小。

3、如果定义一个字符数组时,忘记在字符数组的末尾添加空字符“\\0”,程序会出现一些奇怪的现象。

3

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4