文档详情

C演示课件第09讲[05级].ppt

发布:2017-04-16约1.93千字共31页下载文档
文本预览下载声明
第九讲;一、字符数组的定义;在字符数组中,每一个元素只能存放一个字符。 ;二、字符数组的初始化;例 char s3[8]={’s’,’t’,’r’,’i’,’n’,’g’,’!’,’\0’}; char s4[8]={string!}; char s5[8]=string!;;在字符数组中,并不要求它最后的一个字符为“\0”,也可以没有“\0”。;2)给部分元素赋初值: 例:char s1[9]={’C’,’h’,’i’,’n’,’a’,’!’}; char s2[9]={’C’,’h’,’i’,’n’,’a’,’!’,’\0’}; char s3[9]={”China!”}; char s4[9]= “China!”; ;2、二维字符数组初始化;1.利用格式符%c逐个输入、输出字符:;2.利用格式符%s,可以一次输入、输出字符串。;例: char s1[10], s2[15]; scanf(%s%s,s1,s2 ); printf(%s %s\n, s1,s2 );;3.利用字符串输入输出函数;注意: 函数gets( )只能一次输入一个字符串。 函数gets( )可以读入包含空格和TAB的全部字符,直到遇到回车为止。 ;例:函数gets( )与scanf( )的区别;2、 字符串输出函数puts( ) ??? 作用:将一个字符串(以’\0’结束的字符序列)输出。??????? 格式:puts(字符数组名); 或 puts(字符串);;注意: 函数puts( )一次只能输出一个字符串。 函数puts( )可以输出转义字符。 函数puts( )输出字符串后自动换行。 ;例:函数puts( )与printf( )的区别;C语言提供了很多字符串操作函数,其对应的头文件为string.h;例: char str[12]={“computer”}; printf(“%d”,strlen(str)); printf(“%d”,strlen(“computer”));;例:函数strlen( )的使用。;2.字符串拷贝函数strcpy 引用形式:strcpy(字符数组1,字符串2) ?作用:将字符串2复制到字符数组1中。;例:函数strcpy( )的使用。;3.字符串连接函数strcat 引用形式:strcat(字符数组1,字符串2) 作用:将字符串2的内容复制连接在字符数组1的后面,其返回值为字符数组1的地址。 ;#include string.h main( ) {char str1[12]={“Good ”}; char str2[ ]={“luck!”}; printf(“%s”,strcat(str1,str2)); };4.字符串比较函数strcmp 引用形式:strcmp(字符串1,字符串2) ??? 作用: 比较字符串1和字符串2。两个字符串从左至右逐个字符比较(按照字符的ASCII码值的大小),直到字符不同或者遇见’\0’为止。 如果全部字符都相同,则返回值为0。如果不相同,则返回两个字符串中第一个不相同的字符的ASCII码值的差,即字符串1大于字符串2时函数值为正,否则为负。 ;例:函数strcmp( )的使用。;5. strlwr(字符串) ??strlwr( )的作用是将字符串中大写字母转换成小写字母。 ;例:编写用户登录程序;例:有3个英文字符组成的字符串,要求按照英文字母顺序输出。;if (strcmp(name[0],name[2])0) {strcpy(str,name[0]); strcpy(name[0],name[2]); strcpy(name[2],str); } if (strcmp(name[1],name[2])0) {strcpy(str,name[1]); strcpy(name[1],name[2]); strcpy(name[2],str); } for(i=0;i3;i++) printf(%s\n,name[i]); } ;The End
显示全部
相似文档