- 1、本文档共43页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.4.2 字符数组的初始化 4.4.3 字符数组的引用 4.4.1 字符数组的定义 4.4 字符数组与字符串 4.4.4 字符数组的输入输出 4.4.5 字符串处理函数 .......... * 4.4.1 字符数组的定义 字符数组是用来存放字符数据的数组,即数组的数据类型是字符型(char)的数组称为字符数组。字符数组的每个元素存放一个字符。 字符数组的定义形式为: 一维字符数组定义: 二维字符数组定义: 如, char c[10]; /*定义了一个10个元素的一维字符数组c*/ char c[2][10]; /*定义了一个2行10列的二维字符数组c*/ 由于字符型与整型是互相通用的,因此上面的定义也可改为: int c[10]; int c[2][10]; 但是,此种方法定义会浪费存储空间。 char 数组名[常量表达式]; char 数组名[常量表达式1][常量表达式2]; .......... * 字符串是用双引号括起来的字符序列,在C语言中,字符串是利用字符数组来存放和处理的。 (1)用字符串常量初始化一维字符数组。如,char c[ ]={“How are you”};也写成:char c[ ]=“How are you”;相当于:char c[ ]={‘H’,’o’,’w’,’ ‘,’a’,’r’,’e’,’ ‘,’y’,’o’,’u’,’\0’} (2)二维数组初始化时,也可以使用字符串进行初始化。例如: char c[ ][ 8]={ white,black}; 4.4.2 字符数组的初始化 1.用字符常量初始化数组 2.用字符串常量初始化数组 (1) 一维字符数组初始化,如,char c[10]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’}; (2) 二维字符数组初始化,如,char c[2][10]={{ ’a’,’b’,’c’},{’d’,’e’,’ ’}}; 字符数组c各元素初值为:‘a’‘b’‘c’‘\0’‘\0’‘\0’‘\0’‘\0’‘\0’‘\0’ ‘d’‘e’‘ ’‘\0’‘\0’‘\0’‘\0’ ‘\0’‘\0’‘\0’ (3) 当初值个数与字符数组长度相同,在定义时可以省略数组长度,系统会自动根据初值个数确定数组长度。 (4) 用整型常量初始化字符数组。如,char c[5]={‘H’,111,119}; .......... * 4.4.3 字符数组的引用 字符数组的引用,也是通过对数组逐个元素引用实现的。引用数组的元素可以得到一个字符。 【例4.3】应用一维字符数组,输入一个字符串。程序名为l4_3.cpp。 #include stdio.h main() { char c[ ]=How are you!; /*定义一维数组c有13元素*/ int i; for(i=0;i13;i++) /*通过循环控制输出数组每个元素*/ printf(%c,c[i]); printf(\n); } 运行结果: How are you! .......... * 4.4.4 字符数组的输入输出 通过scanf()或getchar()对字符数组输入赋值,通过printf()或putchar()对字符数组输出,在1.4节中已介绍。使用scanf()和printf()完成输入输出时,%c格式是逐个字符元素输入输出,而%s格式是对整个字符串一次完成输入和输出。在使用%s格式时请注意以下问题: (1)在scanf中使用格式说明符%s实现整串的输入。如, char c[20]; scanf(“%s”,c);执行时,若输入:abcdCR则字符串将从数组c的起始地址(c[0]或数组名c)开始依次放入数组c中,数组剩余空间补’\0’。 (2)用%s格式符输入字符串时,空格、Tab符和回车符只能作为分隔符而不能输入到数组中。如,若输入字符串为:How are you!CR则只有字符串“How”存入到数组中,其余被截掉。 (3)当输入项为数组元素的地址时,输入数据将从这一元素开始存放。(4)输入字符串时,避免发生越界。 (5)在printf()中使用格式说明符%s可以实现整串的输出。其调用形式为:printf(“%s”,c); c是存储单元的首地址。调用这个函数时,将从c地址开始输出存储单元中的字符,直到遇到
文档评论(0)