《教学课件C语言程序设计15字符串与字符串函数.ppt》由会员分享,可在线阅读,更多相关《教学课件C语言程序设计15字符串与字符串函数.ppt(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、PPT模板下载:/moban/ 行业PPT模板:/hangye/ 节日PPT模板:/jieri/ PPT素材下载:/sucai/PPT背景图片:/beijing/ PPT图表下载:/tubiao/ 优秀PPT下载:/xiazai/ PPT教程: /powerpoint/ Word教程: /word/ Excel教程:/excel/ 资料下载:/ziliao/ PPT课件下载:/kejian/ 范文下载:/fanwen/ 试卷下载:/shiti/ 教案下载:/jiaoan/ 字体下载:/ziti/ 教学课件C语言程序设计15字符串与字符串函数字符串及字符串函数字符串及字符串函数上页下页主页结束字
2、符串v字符串及其结束标志l无字符串变量,用字符数组处理字符串l字符串结束标志:0 例 char ch6=“Hello”; char ch6=“Hello”; char ch=“Hello”;用字符串常量ch0Helloch1ch2ch3ch40ch5 例 char ch5=“Boy”;ch0Boy00用字符串常量ch1ch2ch3ch4上页下页主页结束v字符串的输入输出l逐个字符I/O: %cl整个字符串I/O: %sv字符串输入函数:lscanf函数: char st10; scanf(“%s”,st);说明:(1)字符串输入时无须加取地址符“&”,直接使用字符数组名即可;(2)scanf遇
3、到空格、跳格符或回车符就认为字符串结束。lgets函数: char st10; gets(st);说明:(1 )gets函数输入时,只有遇到回车符才认为字符串结束。字符串上页下页主页结束v 字符串输出函数:l printf函数: printf(“%s”,st);说明:(1)输出“0”前所有字符,输出后不自动换行。l puts函数: gets(st);说明:(1 )输出“0”前所有字符,输出后自动换行。注:使用gets和puts,必须包含头文件 string.h字符串上页下页主页结束例 main( ) char a5=H,e,l,l,o; printf(“%s”,a); 例 main( ) ch
4、ar a=“Hello”; / char a6=“Hello”; printf(“%s”,a); 结果:Hello#-=* h e l l o02314结果:Hello用“%s”输出时,遇0结束例子上页下页主页结束main() char a=h,e,l,0,l,o,0; printf(%s,a);例子输出:hel h e l 0 l o 0数组中有多个0时,遇第一个结束例 字符串输入举例 H o w 0 a r e 0 y o u ? 0 #include main() char a15,b5,c5; scanf(%s%s%s,a,b,c); printf(a=%snb=%snc=%sn,a,
5、b,c); scanf(%s,a); printf(a=%sn,a);运行情况:输入:How are you?输出:a=How b=are c=you?输入:How are you?输出:a=Howscanf中%s输入时,遇空格或回车结束运行情况:输入:How are you?上页下页主页结束u字符串连接函数strcat格式:strcat(字符数组1,字符数组2)功能:把字符数组2连到字符数组1后面返值:返回字符数组1的首地址说明:字符数组1必须足够大 连接前,两串均以0结束;连接后,串1的0取消, 新串最后加0u字符串拷贝函数strcpy格式:strcpy(字符数组1,字符串2)功能:将字符
6、串2,拷贝到字符数组1中去返值:返回字符数组1的首地址说明:字符数组1必须足够大 拷贝时0一同拷贝 不能使用赋值语句为一个字符数组赋值例 char str120,str220; str1=“Hello!”; () str2=str1; ()其他字符串处理函数:必须包含头文件其他字符串处理函数:必须包含头文件 string.h上页下页主页结束例 strcpy与strcat举例#include #include void main() char destination25; char blank = , c= C+, turbo = Turbo; strcpy(destination, turbo
7、); strcat(destination, blank); strcat(destination, c); printf(%sn, destination);Turbo C+TrboC+0123456789u024.Trbo0123456789u024.Trbo00123456789u24.上页下页主页结束u字符串比较函数strcmp格式:strcmp(字符串1,字符串2)功能:比较两个字符串比较规则:对两串从左向右逐个字符比较(ASCII码), 直到遇到不同字符或0为止返值:返回int型整数,a. 若字符串1 字符串2, 返回正整数 c. 若字符串1= 字符串2, 返回零说明:字符串比较不
8、能用“=”,必须用strcmpu字符串长度函数strlen格式:strlen(字符数组)功能:计算字符串长度返值:返回字符串实际长度,不包括0在内例 对于以下字符串,strlen(s)的值为:(1)char s10=A,0,B,C,0,D;(2)char s =“tr0willn”;(3)char s =“x69082n”; 答案:1 3 1上页下页主页结束#include #include main() char str1 = ”Hello!, str2 = ”How are you?”,str20; int len1,len2,len3; len1=strlen(str1); len2=s
9、trlen(str2); if(strcmp(str1, str2)0) strcpy(str,str1); strcat(str,str2); else if (strcmp(str1, str2)0) strcpy(str,str2); strcat(str,str1); else strcpy(str,str1); len3=strlen(str); puts(str); printf(”Len1=%d,Len2=%d,Len3=%dn”,len1,len2,len3);例 strcmp与strlen举例How are you?Hello!Len1=6,Len2=12,Len3=18上页下页主页结束例 有三个字符串,找出其中最大者 H o w 0 H e l l o 0 H i g h 0 str0str1str2#include #include main() char string20,str320; int i; for(i=0;i0)strcpy(string,str0); else strcpy(string,str1); if(strcmp(str2,string)0)strcpy(string,str2); printf(nThe largest string is:n%sn,string);
限制150内