资源描述:
《最新C语言字符串.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第十章字符串知识点1:字符串1.字符串常量(1)C语言中字符串常量的形式,用一对双引号将一串字符括起来称为字符串常量。例如:“abcd”.(2)字符串的长度。一对双引号中字符的个数就是字符串的长度。可调用strlen函数求字符串长度,例如,strlen(“abcd”),字符串的长度为4.(3)字符串的结束标志。在字符串最后一个字符的后面,系统自动添加一个转义字符‘ ’作为字符串的结束标志。当人为地在字符串中间插入转义字符‘ ’时,例:“a bcd”,系统就认为字符串到a为止,长度为1,不再顾及 后的字符
2、。1__________________________________________________(4)字符串常量的存储结构。1个字符串所占字节数为:字符串长度+1.例如字符串“abcd”,在内存上5个字节,其字符占4个字节,字符串结束标志’ ‘占一个字节。可调用sizeof函数求字符串所占字节数,如:sizeof(“abcd”).(5)字符串常量的面值和地址值。“abcd”是字符串的面值,而当把它赋给某个变量时,给出的是此字符串在内存所占连续存储区的首地址。2_____________________
3、_____________________________2.一维字符数组和字符串变量(1)一维字符数组的每个元素可以存放一个字符。(2)当一维字符数组中存放最后一个字符是’ ‘时,可称此一维字符数组内存放了一个字符串,同时可称此一维数组为字符串变量。3.通过赋初值给一维字符数组赋字符串赋字符串初值形式:(1)chars[5]={‘a’,‘b’,‘c’,‘d’,‘ ’};显示赋字符串结束标志。(2)chars[5]={‘a’,‘b’,‘c’,‘d’};系统会自动赋字符串结束标志。3_____________
4、_____________________________________(3)chars[5]=“abcd”;直接赋字符串常量。(4)chars[5]={“abcd”};把字符串常量放在一对花括号中。(5)chars[]=“abcd”;根据所赋字符串初值来确定数组长度。注意,若有定义:chars[5]=“aa”;,sizeof(s)的值为5,strlen(s)的值为2.前者是s在内存中所中字节数,后者是s中的字符个数。4_____________________________________________
5、_____10-1有以下程序main(){chara[]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’,‘g’,‘h’,‘ ’};inti,j;i=sizeof(a);j=strlen(a);printf(“%d,%d”,i,j);}程序运行后结果是A.9,9B.8,9C.8,8D.9,85__________________________________________________10-2有以下程序#includemain(){char*p=“abcde fghjik
6、”;printf(“%d”,strlen(p));}程序运行后结果是A.12B.15C.6D.56__________________________________________________10-3以下不能正确进行字符串赋初值的语句是A.charstr[5]=“good!”;B.charstr[]=“good!”;C.char*str=“good!”;D.charstr[5]={‘g’,’o’,’o’,’d’};7___________________________________________
7、_______10-4有以下程序main(){charp[20],*q=p;scanf(“%s%s”,p,q);printf(“%s%s”,p,q);}若从键盘输入:abcdef<回车>,则输出结果是A.defdefB.abcdefC.abcdD.dd8__________________________________________________10-5有以下程序main(){chars[]=“ABCD”,*p;for(p=s+1;p
8、A.ABCDB.AC.BD.BCDBCDBCCDCDCDDDD9__________________________________________________4.程序中给一维字符数组赋字符串有定义chars[5];(1)不可以用赋值语句给s数组赋字符串。例如,s=“abcd”;是错误的,数组名s是一个常量,不可重新赋值。(2)可给数组元素一个一个赋字符:s[0]=‘a’;s[1]