c第3章数组与指针01.ppt
文本预览下载声明
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * (2) gets( )函数 用法: char str [80]; gets(str); 作用: 读入一个字符串(包括空格)到str[ ]中,用\0 代替换行符。 数组名作参数。 char name[100]; gets(name); puts(name); 举例 #include stdio.h void main(void) { char str[80]; int i; gets(str); for(i=0 ; str[ i ]!=\0; i++) if(str[i]=astr[i]=z) str[i] - =32; puts(str); } 3.2.4常用的字符处理函数 该类函数的原型定义在 string.h中。 使用时,加上 # include string.h 1.求字符串长度,strlen(字符数组) #include stdio.h #include string.h void main( ) { char str[]=hello; printf(%d,strlen(str)); printf(\n); } (2)字符串的比较 strcmp(str1,str2) 作用:对str1和str2 进行逐个字符的ASCII码比较, 直到对应字符能够确定大小关系或到串尾为止。 返回整型数值结果: 比较结果 strcmp的值 str1str2 0 str1==str2 0 str1str2 0 #include stdio.h #include string.h void main( ) { char str1[100],str2[100]; gets(str1); gets(str2); if(strcmp(str1,str2)==0) printf(stri1 == stri2); else if(strcmp(str1,str2)0) printf(str1 str2); else printf(str1 str2); } (3)串拷贝函数 strcpy(str1,str2) 作用:将str2拷贝到字符数组str1中,包括‘\0’ 。 用法: char str1[10], str2[ ]=”Computer”; strcpy(str1,str2); strcpy(str1,”Program”); 说明: ①str1的长度要足够长; ②str1只能是字符数组名,str2可以是字符数组名或字符串常量。 分析下面的代码,错在哪? #include stdio.h #include string.h void main( ) { char str1[5], str2[ ]=hello; strcpy(str1,str2); printf(%s,str1); printf(“\n”); } (4)串连接函数 strcat(str1, str2) 作用:将str2连接到str1后(去掉str1的\0)。 用法: char str1[20]={“Dalian”}, str2[ ]={” University”}; strcat(str1,str2); puts(str1); 说明: ①str1 只能是字符数组名,长度要足够长。 ②str2 可以是字符数组名或字符串常量。 #include stdio.h #include string.h void main( ) { char str1[30]=”The C program ”; char str2[ ]=”language”; strcat(str1,str2); puts(str1); } ⑸ strlwr(str) 将str中的大写字母转换成小写字母,其他不变。 ⑹ strupr(str) 将str中的小写字母转换成大写字母,其他不变。 # include stdio.h # include string.h void main(void) { char str1[ ]=c programming! 123,str2[]=Computer; strlwr(str2); strupr(str1); puts(str1); puts(str2); } C PROGRAMMING!
显示全部