C语言程序设计 教学课件 作者 柴世红_第8章.ppt

C语言程序设计 教学课件 作者 柴世红_第8章.ppt

ID:50351368

大小:488.50 KB

页数:74页

时间:2020-03-08

C语言程序设计 教学课件 作者 柴世红_第8章.ppt_第1页
C语言程序设计 教学课件 作者 柴世红_第8章.ppt_第2页
C语言程序设计 教学课件 作者 柴世红_第8章.ppt_第3页
C语言程序设计 教学课件 作者 柴世红_第8章.ppt_第4页
C语言程序设计 教学课件 作者 柴世红_第8章.ppt_第5页
资源描述:

《C语言程序设计 教学课件 作者 柴世红_第8章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章字符数组与字符串8.1字符数组的定义8.2字符数组的初始化8.3字符数组的引用8.4字符串8.5常用字符串处理函数8.6案例学习8.1字符数组的定义用来存放字符常量的数组称为字符数组,字符数组的定义形式与前面介绍的数值型数组的定义形式十分类似,其一般形式可表示为:char数组名[常量表达式]【例8-1】以下程序的输出结果是()。答案:B。(2)字符数组也可以定义为二维或多维数组。例如:charc[5][10];即定义了一个二维字符数组,其数组元素为字符型,数组名为c,其结构为5行10列。和数值型数组一样,数组c也可以看成是由5个含有10个数组元

2、素的一维字符数组组成的数组。chard[2][3][2];定义了一个三维字符数组,数组名为d。同样,数组d也可以看成是由2个3行2列的二维字符数组组成的数组。8.2字符数组的初始化1.一次性赋值和数值数组一次性赋值一样,字符数组一次性赋值是指在定义数组的过程中,在一对大括号中分别给出数组元素的值。【例8-2】一次性赋值实例。图8.1例8-2运行结果以下定义了一个一维字符数组,其有10个数组元素,赋值后各元素的值如图8.2所示。图8.2数组内容图示2.逐元素赋值和数值数组一样,字符数组的逐元素赋值指在定义字符数组后,分别对字符数组的每一个元素分别赋值。

3、【例8-3】逐元素赋值实例。图8.3例8-3运行结果3.用循环语句赋值【例8-4】定义一字符数组,用循环语句实现对字符数组赋值。图8.4例8-4运行结果4.字符串常量赋值例如:charstr[10]={"china"};其在内存中的存储形式str[0]为'c'str[1]为'h',str[2]为'i',str[3]为'n',str[4]为'a'。【例8-5】从键盘上输入一个国家的首都,然后在屏幕上显示。图8.5例8-5运行结果【例8-6】以下说法正确的是()。A.已定义charc[]={“china”};,要将所有的字符输出的语句是:printf(“

4、%s”,&c);B.已定义charc[]={“china”};,要将所有的字符输出的语句是:printf(“%s”,c[0]);C.‘a’和“a”所占的存储空间是不一样的D.‘a’和“a”所占的存储空间是一样的   答案:C。8.3字符数组的引用8.3.1字符数组的引用格式字符数组的引用格式与普通数组完全相同,其一般形式可表示为:    字符数组名[下标];   注意:(1)和数值数组一样,字符数组的下标引用从0开始。(2)如果是二维数组或高维数组,则有两个或两个以上的下标。【例8-7】以下程序的输出结果为()。【例8-8】有3个字符串s1,s2和s

5、3,其中s1=“abcdef”;,s2=“12345”;用字符数组实现将s1的内容复制到s3中,再将s2的内容添加到s3的后面,最后输出字串s3。   解析:因为在C语言中没有关于字符串的变量,因此对于字符串的操作必须要用字符数组实现,故首先须定义三个字符数组,同时考虑到第三个字符串的长度要能容纳字符串1和字符串2。程序源代码如下:图8.6例8-8运行结果8.3.2字符数组的输入与输出1.逐个字符操作用scanf()函数结合格式控制符“%c”可实现逐个字符的输入,用printf()函数结合格式控制符“%c”可实现逐个字符的输出。【例8-9】逐个字符的

6、输入实例。图8.7例8-9运行结果2.将整个字符串一次输入或输出用scanf()函数结合“%s”可实现字符串的输入,用printf()函数结合“%s”可实现字符串的输出。【例8-10】字符串的输入和输出。图8.8例8-10运行结果【例8-11】二维字符数组引用实例。图8.9例8-11运行结果8.4字符串8.4.1字符串的基本概念1.C语言对字符串的约定字符串指若干有效字符组成的序列。所谓有效字符是指系统允许使用的字符,不同的系统允许使用的字符是不相同的。C语言中的字符串可以包括字母、数字、专用字符、转义字符等。例如,下面都是合法的字符串:"china

7、","basic","a+b=c","32.8"2.C语言中表示字符串常量的约定虽然C语言中没有提供字符串数据类型,但却允许使用字符串常量。在前面的介绍中我们提到,字符串常量是由双引号括起来的一串字符,在表示字符串常量时,不需要人为地在其末尾加入'',例如:字符串常量“hello!”不必写成“hello!”,C编译程序将自动完成这一工作,在末尾添加字符串结束标记''。3.C语言中字符串常量给出的是地址值每一个字符串常量都分别占用内存中一串连续的存储空间,这些连续的存储空间实际上就是字符型一维数组。这些数组虽然没有名字,但C编译系统却以字符

8、串常量的形式给出存放每一字符串的存储空间的首地址。不同的字符串具有不同的起始地址。也就是说:在C语言中,字符

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。