c语言字符串s顺序竖直返回,C语言程序设计第十章课件.ppt

《C语言程序设计第十章课件.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计第十章课件.ppt(37页珍藏版)》请在人人文库网上搜索。

1、第10章 字符串,哈尔滨工业大学 计算机科学与技术学院 苏小红,本章学习内容, 字符串常量 字符串处理函数 字符数组和字符指针 向函数传递字符串 从函数返回一个字符串指针,10.1字符串常量,10.2字符串的存储,C语言并没有为字符串提供任何专门的表示法,完全使用字符数组和字符指针来处理 字符数组 每个元素都是字符类型的数组 char str80;,数组的最后一个元素必须是0,字符数组的初始化,用字符型数据对数组进行初始化 char str6 = C,h,i,n,a,0; 用字符串常量直接对数组初始化 char str6 = China; char str6 = China;,10.3字符指针。

2、,C语言并没有为字符串提供任何专门的表示法,完全使用字符数组和字符指针来处理,字符串是一串用双引号引起来的字符,字符数组就是每个元素都是字符型的数组,字符指针就是指向字符类型数据的指针,Hello China,pStr,数组最后一个元素必须是0才表示字符串,10.3字符指针,定义和初始化方法不同,str = Hello China;,Hello China,pStr,char str12 = Hello China;,char *pStr; pStr = Hello China;,str,Why?,数组名str是地址常量,字符指针pStr是变量,10.3字符指针,定义和初始化方法不同,char。

3、 *pStr = Hello China;,Hello China,pStr,char str12 = Hello China;,char *pStr; pStr = Hello China;,str,pStr = ,按字符逐个输入/输出,for (i=0; stri!=0; i+) putchar(stri); putchar(n);,char str10;,10.4字符串的访问和输入/输出,按字符串整体输入/输出,scanf(%s,str); printf(%s,str);,char str10;,10.4字符串的访问和输入/输出,gets(str); puts(str);,scanf(%。

4、s,str); printf(%s,str);,char str10;,10.4字符串的访问和输入/输出,gets(str); puts(str);,按字符串整体输入/输出,10.4字符串的访问和输入/输出,【例10.1】从键盘输入一个人名,把它显示在屏幕上,Why?,10.4字符串的访问和输入/输出,【例10.1】从键盘输入一个人名,把它显示在屏幕上,10.4字符串的访问和输入/输出,【例10.2】使用函数gets( ),从键盘输入一个带有空格的人名,然后把它显示在屏幕上,10.4字符串的访问和输入/输出,【例10.2】使用函数gets( ),从键盘输入一个带有空格的人名,然后把它显示在屏幕。

5、上,10.4字符串的访问和输入/输出,【例10.2】使用函数gets( ),从键盘输入一个带有空格的人名,然后把它显示在屏幕上,10.4字符串的访问和输入/输出,【例10.3】从键盘输入一个带有空格的人名,然后在显示人名的前面显示Hello, I said to,10.4字符串的访问和输入/输出,【例10.3】从键盘输入一个带有空格的人名,然后在显示人名的前面显示Hello, I said to,10.5字符串处理函数,#include ,strcpy(目的字符串,源字符串);,string copy,strlen(字符串);,string length,strcat(目的字符串,源字符串);。

6、,string combination,strcmp(字符串1,字符串2);,string comparison,计算字符串长度,#include ,strlen(字符串);,string length,char str10 = China; printf(%d, strlen(str); 打印结果是 5、6,还是10?,计算字符串长度,#include ,strlen(字符串);,string length,len = strlen(str); for (i=0; ilen; i+) putchar(stri); putchar(n);,字符串复制,#include ,strcpy(目的字符。

7、串,源字符串);,string copy,字符串能否用=整体复制? str2 = str1;,strcpy(str2, str1);,字符串复制,#include ,strcpy(目的字符串,源字符串);,string copy,字符串能否用=整体复制? str2 = str1;,strcpy(str2, str1);,字符串连接,#include ,strcat(目的字符串,源字符串);,string combination,strcat(str2, str1);,字符串比较,#include ,strcmp(字符串1,字符串2);,string comparison,字符串能否用、=比较大。

8、小? if (str2 = str1),if (strcmp(str2, str1) = 0),字符串比较,#include ,strcmp(字符串1,字符串2);,string comparison,字符串是如何比较大小的?,compare computer,compare computer 表示 strcmp(str1, str2) 0为真,【例10.4】按奥运会参赛国国名在字典中的顺序对其入场次序进行排序,【例10.4】按奥运会参赛国国名在字典中的顺序对其入场次序进行排序,10.5字符串处理函数,10.6向函数传递字符串,向函数传递字符串时,既可使用字符数组作函数参数,也可使用字符指针作。

9、函数参数 传地址调用,例10.5 :字符串复制 用字符数组编程,void MyStrcpy(char dstStr, char srcStr) int i = 0; while (srcStri != 0) dstStri = srcStri; i+; dstStri = 0; ,srcStri,dstStri,H,i=0,e,i=1,l,i=2,l,i=3,o,i=4,i=5,C,i=6,h,i=7,i,i=8,n,i=9,a,i=10,0,srcStri=0,void MyStrcpy(char *dstStr, char *srcStr) while (*srcStr != 0) *ds。

10、tStr = *srcStr; srcStr+; dstStr+; *dstStr = 0; ,例10.5 :字符串复制 用字符指针编程,*srcStr,*dstStr,H,e,l,l,o,C,h,i,n,a,0,*srcStr=0,srcStr+,dstStr+,例10.6 :计算实际字符个数,unsigned int MyStrlen(const char str) int i; unsigned int len = 0; for (i=0; stri!=0; i+) len+; return (len); ,unsigned int MyStrlen(const char *pStr) unsigned int len = 0; for (; *pStr!=0; pStr+) len+; return (len); ,方法2:用字符指针实现,方法1:用字符数组实现,统计实际字符个数(不含0),10.7从函数返回一个字符串指针,【例10.7】编程实现strcat( )的功能,10.7从函数返回一个字符串指针,【例10.7】编程实现strcat()的功能,10.7从函数返回一个字符串指针,【例10.7】编程实现strcat()的功能,Questions and answers。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值