- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 字符数组与字符串 6.1 字符数组 元素存放的是字符型数据的数组称为字符数组。字符数组的声明和数值型数组的声明一样。 例如: char mych[20]; /*mych为字符数组,包含20个元素*/ char mynum[15][20]; /*定义mynum为15×20的二维字符数组*/ 字符数组的初始化有定义时初始化和通过赋值语句初始化。 6.2 字符串变量 C语言的字符串变量与其他高级语言中的字符串变量不同,它并不是真正的字符串类型的变量,因为C语言中没有字符串类型的数据。C语言的字符串变量从形式讲就是字符数组。但是,字符数组与字符串又是不一样的,因为字符串是带有字符串结束符\0的一组字符,而字符数组则不一定要带\0。而有了\0标志后,在处理字符数据时,就不必再用数组的长度来控制对字符数组的操作,而是用\0来判断字符串的结束位置,这是字符串变量与字符数组在操作上根本区别。 字符串变量需要字符串常量对其进行初始化。 6.3 字符串的输入输出 我们有两对字符串的输入输出的函数,一对是先前学过的printf()函数和scanf()函数,另一对是puts()函数和gets()函数。 (1)使用printf()函数输出字符串变量要使用转换字符序列%s (2)使用scanf()函数输入字符串给字符串变量使用转换字符序列%s (3)用puts()函数输出字符串 (4)gets()字符串输入函数 6.4 字符串处理函数 (1)字符串拷贝函数strcpy() 功能:把一个字符串复制到另一个字符串中; 用法:stpcpy(字符串变量1,字符串2); 说明:它把字符串2的内容复制到字符串变量1中,其中字符串2既可以是字符串变量,也可以是字符串常量。 (2)字符串拼接函数strcat() 功能:把一个字符串连接到另一个字符串后面; 用法:strcat(字符串变量1,字符串2); 说明:它把字符串2的内容连接到字符串变量1中,其中字符串2既可以是字符串变量,也可以是字符串常量。 (3)字符串比较函数strcmp() 功能:比较两个字符串的大小; 用法:strcmp(字符串1, 字符串2); 说明:它按ASCII码顺序比较字符串1和字符串2,并由函数返回值决定比较结果。其返回值的结果如下决定: 如果字符串1=字符串2,返回0; 如果字符串1字符串2,返回一正整数; 如果字符串1字符串2,返回一负整数。 其中字符串1和字符串2既可以是字符串变量也可是字符串常量。 (4)字符串比较函数stricmp() 功能:比较两个字符串的大小; 用法:strcmp(字符串1, 字符串2); 说明:它与前一个函数的区别是不分大小写比较字符串1和字符串2的大小,其中字符串1和字符串2既可以是字符串变量也可是字符串常量。 (5)将一个字符串中的所有字符都设为指定字符的函数strset() 功能:将一个字符串中的所有字符都设为指定字符; 用法:strcmp(字符串1, 字符1); 说明:它把字符串1中的所有字符都设置为字符1,其中字符串1是变量,字符1可以是一个变量,也可以是一个常量。 (6)字符串倒转函数strrev() 功能:把指定的字符串变量的内容倒转; 用法:strrev(字符串变量1); 说明:这个函数把字符串变量1中的内容倒转过来。 (7)将字符串中的小写字母转换为大写字母函数strupr() 功能:把指定字符串变量中的小写字母转换为大写字母; 用法:strupr(字符串变量1); 6.5 上机实训 实验目的: 字符串的处理在程序设计中有着广泛的应用,通过本实训我们要求掌握一些常用的字符串处理,如字符串的连接、加密、排序、空格压缩等。 实验内容: 两字符串连接 字符串翻转 字符串加密 地名排序 空格的压缩 6.5.1 两字符串连接 把一个字符串连接到另一个字符串的后面,不使用strcat()函数。 编写程序代码如下: #include stdio.h #include string.h void main() { int i,j; char str1[100]=I like ,str2[20]=China for ever!; printf(Before Connection:); printf(str1=%s,str2=%s\n,str1,str2); for(i=0;str1[i]!=\0;i++); for(j=0;str2[j]!=\0;j++) { str1[i++]=str2[j]; } str1[i]=\0; printf(After connection:str1=%s,str1); } 程序运行结果: Before Connection:str1=I like
您可能关注的文档
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯1 第4章 P2P应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯1 第5章 SMTP与POP3应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯1 第6章 网络数据加密与解密.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯1 第7章 三维设计与多媒体编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第1章 进程、线程与网络协议.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第2章 TCP应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第3章 UDP应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第4章 P2P应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第5章 SMTP与POP3应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第6章 网络数据加密与解密.ppt
文档评论(0)