欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    字符串与字符指针.ppt

    • 资源ID:6564313       资源大小:1.98MB        全文页数:53页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    字符串与字符指针.ppt

    Lesson 10字符串与字符指针,ASCII码,A=65,a=97,=32,0=48,常见字符的ASCII码,2007.4已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,以下不能将变量c中大写字母转换为对应小写字母的语句是 A)c=(c-A)%26+a B)c=c+32 C)c=c-A+a D)c=(A+c)%26-a,整型与字符型,黄建语录四:整型和字符型通用。,2005.4.160的ASCII值为48,则程序输出 char a=1,b=2;printf(%c,b+);printf(%d,b-a);,习题演练,2009.9.23A的ASCII码为65,则程序输出 char c1,c2;c1=A+8-4;c2=A+8-5;printf(%c,%dn,c1,c2);,2,2,E,68,转义字符,字符数组与串2-1,char sa=N,B,A;,N,B,A,sa,2,0,1,char sb=NBA;,N,B,A,0,sb,2,0,1,3,3,4,字符数组与串2-2,N,B,A,sa,2,0,1,N,B,A,0,sb,2,0,1,3,char sa=N,B,A,0;,char sb=NBA;,4,4,0,3,区分0与0,2008.9.13以下不能作为C合法常量的是 A)cd B)0.1e+6 C)a D)011,习题演练2-1,2008.9.18以下程序运行后,w的值是 int w=A;char x=0,y=0;w=(x|y),1,2006.9.24以下选项中,值为1的表达式是 A)1-0 B)1-0 C)1-0 D)0-0,2005.4.25以下能正确定义一维数组的选项是 A)int a5=0,1,2,3,4,5;B)int a5=0123;C)char a=A,B,C;D)char a=0,1,2,3,4,5;,习题演练2-2,2005.4.27若已有定义:char a=xyz,b=x,y,z;则以下选项正确的是 A)数组a和b的长度相同 B)a数组长度小于b C)a数组长度大于b D)上述说法都不对,字符串函数,输出字符串,N,B,A,sa,2,0,1,0,3,char sa4=NBA;for(i=0;i 3;i+)printf(%c,sai);,NBA,printf(%s,sa);,NBA,puts(sa);,NBA,习题演练,char sa7=ABC0TV;,ABC,puts(sa+1);,A,B,C,sa,0,T,V,0,2,0,1,3,5,4,6,printf(%s,sa+4);,printf(%s,sa);,BC,TV,字符串函数,gets与scanf,函数读取字符串,直至遇到换行符为止,然后把换行符替换为空字符0。,gets,scanf,函数遇到空格或换行符时输入结束,输入有空格的字符串时,须用gets。,gets函数3-1,例若运行时输入:AB CDAB CD,则以下程序运行结果是 char st180,st280;gets(st1);scanf(%s,st2);puts(st1);puts(st2);,AB CDAB,2004.4.35有以下定义:char a10,*p=a;不能给数组a输入字符串的语句是 A)gets(a);B)gets(a0);C)gets(,2006.4.17若要求从键盘读入含有空格字符的字符串,应使用函数 A)getc()B)gets()C)getchar()D)scanf(),gets函数3-2,2009.9.31以下叙述中错误的是 A)不可以用赋值语句给字符数组名赋字符串 B)可以用输入语句把字符串整体输入给字符数组 C)字符数组中的内容不一定是字符串 D)字符数组只能存放字符串,char s80,a80;int i,j=0;gets(s);for(i=0;si!=0;i+)if(_)aj+=si;aj=0;puts(a);,gets函数3-3,2003.9.19填空实现程序功能:将字符串s中的数字字符放入数组a中,并输出。例如,输入字符串:abc123edf456gh,则输出:123456。,si=0&si=9,字符串函数,字符串长度,N,B,A,sa,2,0,1,0,3,char sa4=NBA;,int k=strlen(sa);,3,printf(%d,k);,strlen与sizeof,N,B,A,sa,2,0,1,0,3,char sa4=NBA;,int k=strlen(sa),v=sizeof(sa);,k=3,v=4,printf(k=%d,v=%d,k,v);,strlen函数4-1,char sa7=ABC0TV;,3,printf(%d,strlen(sa+1);,A,B,C,sa,0,T,V,0,2,0,1,3,5,4,6,printf(%d,strlen(sa+4);,printf(%d,strlen(sa);,2,2,printf(%d,sizeof(sa);,7,2004.4.31以下程序的运行结果是 char a=abcdefg,b10=abcdefg;printf(%d,%d,sizeof(a),sizeof(b);,strlen函数4-2,8,10,2005.4.24以下程序的运行结果是 char a7=a00a00;printf(%d,%d,sizeof(a),strlen(a);,7,2,2007.4.12以下程序的运行结果是 char a=1,2,3,4,0;printf(%d,%d,sizeof(a),strlen(a);,5,4,2007.4.10以下程序的运行结果是 printf(%d,strlen(IBMn0121);,strlen函数4-3,以下程序的运行结果是 char s110=abcd!,*s2=n123;printf(%d,%d,strlen(s1),strlen(s2);,9,5,5,2010.9.23以下程序的运行结果是 char x=STRING;x0=0;x1=0;x2=0;printf(%d,%d,sizeof(x),strlen(x);,7,0,例char sa=a,b,sb10=a,b;printf(%d,%d,strlen(sa),strlen(sb);A)在给sa和sb数组置初值时,系统会自动添加字符串结束符,故输出的长度都为2 B)由于sa数组中没有字符串结束符,长度不能确定;但sb数组中字符串长度为2 C)由于sb数组中没有字符串结束符,长度不能确定;但sa数组中字符串长度为2 D)由于sa和sb数组中都没有字符串结束符,故长度都不能确定,strlen函数4-4,字符串函数,字符串拷贝3-1,N,B,A,sa,2,0,1,0,3,char sa4=NBA,sb4;,strcpy(sb,sa);,printf(sa=%s,sb=%s,sa,sb);,N,B,A,sb,0,字符串拷贝3-2,N,B,A,sa,2,0,1,0,3,char sa4=NBA,sb4;,strcpy(sb,YOU);,printf(sa=%s,sb=%s,sa,sb);,Y,O,U,sb,0,字符串拷贝3-3,m,e,0,sa,char sa3=me,sb5=LOVE;,strcpy(sb,sa);,L,O,V,sb,E,0,2,0,1,m,e,0,sa=me,sb=me,strcpy函数2-1,char sa7=ABC0TV,sb7;,strcpy(sb+2,sa+4);,A,B,C,sa,0,T,V,0,2,0,1,3,5,4,6,strcpy(sb,sa);,A,B,C,sb,0,T,V,0,strcpy(sb+strlen(sb),sa+1);,B,C,0,2005.3.15以下程序的运行结果是 char s=abc,t34;for(i=0;i3;i+)strcpy(ti,s);for(i=0;i3;i+)puts(,strcpy函数2-2,有定义:char*p=abcdefghi;以下选项中正确运用了strcpy函数的是 A)char s10;strcpy(s,p4);B)char s10;strcpy(+s,abcbcc,字符串函数,字符串连接,m,e,0,sa,L,O,V,sb,E,0,2,0,1,m,e,0,sa=me,sb=LOVEme,char sa3=me,sb7=LOVE;,strcat(sb,sa);,strcat函数3-1,m,e,0,sa,char sa3=me,sb7=LOVE;,strcpy(sb+strlen(sb),sa);,L,O,V,sb,E,0,2,0,1,m,e,0,sa=me,sb=LOVEme,2007.4.37以下程序的运行结果是 char p20=a,b,c,d;char q=abc,r=abcde;strcpy(p+strlen(q),r);strcat(p,q);printf(%d%d,sizeof(p),strlen(p);,strcat函数3-2,2011,2007.4.38以下程序的运行结果是 char p20=a,b,c,d;char q=abc,r=abcde;strcat(p,r);strcpy(p+strlen(q),q);printf(%d%d,sizeof(p),strlen(p);,206,2001.4.43程序运行时,输入:ABC,则输出 char s10=1,2,3,4,5;gets(s);strcat(s,6789);printf(%s,s);,strcat函数3-3,ABC6789,2010.9.33以下程序的运行结果是 char a20=ABCD0EFG0;char b=IJK;strcat(a,b);printf(%s,a);,ABCDIJK,字符串函数,字符串比较,int a,b,c,d,e,f;char sa4=ATM,sb8=ATM;,b=strcmp(ATM,ABCD);,c=strcmp(ATM,ATM);,d=strcmp(ATM,ATM);,e=strcmp(ABCD,abcd);,f=strcmp(sa,sb);,a=strcmp(ABCD,ATM);,a=-1,b=1,c=0,d=1,e=-1,f=0,例以下程序的运行结果是 char sa8=MATCH,sb6=MVP;char sc8=MVP,*p=sc;printf(%d,strcmp(sa,sb);printf(%d,strcmp(sb,sc);if(sb=sc)printf(sb和sc地址相同,);else printf(sb和sc地址不同,);if(p=sc)printf(p和sc地址相同);else printf(p和sc地址不同);,习题演练2-1,-1,0,sb和sc地址不同,p和sc地址相同,2004.9.31能实现当s1串大于s2时执行S的是 A)if(s1 s2)S;B)if(strcmp(s1,s2)S;C)if(strcmp(s2,s1)0)S;D)if(strcmp(s1,s2)0)S;,习题演练2-2,2010.9.31下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST”要求的是 A)if(strcmp(s2,s1)=0)ST;B)if(s1=s2)ST;C)if(strcpy(s1,s2)=1)ST;D)if(s1-s2=0)ST;,区分A与A,A,A,与,字符数组,字符指针,字符数组与指针6-1,char s4=BOY,*p;p=s;*p=D;p+;*p=I;printf(%s,s);,19962000200120022003,?,2000,2001,B,O,Y,0,I,D,ps0s1s2s3,栈,DIY,字符数组与指针6-2,char s4=BOY;char*p=BOY;s1=M;s2=W;,7000,B,O,Y,0,M,p,栈,W,B,O,Y,0,7000700170027003,s0s1s2s3,堆,字符数组与指针6-3,char s4,*p;strcpy(s,BOY);p=BOY;,?,?,?,?,?,p,栈,B,O,Y,0,7000700170027003,s0s1s2s3,堆,19962000200120022003,B,O,Y,0,7000,字符数组与指针6-4,19962000200120022003,char s4,*p;,?,?,?,?,?,p,栈,B,O,Y,0,7000700170027003,s0s1s2s3,堆,字符数组与指针6-5,char s4,*p;p=s;strcpy(p,BOY);,?,?,?,?,?,p,栈,B,O,Y,0,7000700170027003,s0s1s2s3,堆,2000200120022003,B,O,Y,0,2000,字符数组与指针6-6,正确:char s3=me;char s3=me;char s=m,e,0;char s3;strcpy(s,me);错误:char s3;s=me;,正确:char*p=me;char*p=me;char*p;p=me;char s3,*p=s;strcpy(p,me);错误:char*p;*p=me;char*p;strcpy(p,me);,2010.3.23以下能正确进行字符串赋值的是 A)char*s;s=Olympic;B)char s8;s=Olympic;C)char*s;s=Olympic;D)char s8;s=Olympic;,字符数组与指针3-1,2005.4.39以下能正确进行字符串赋值的是 A)char*p;*p=right!;B)char s10;s=right!;C)char s10;*s=right!;D)char*p=right!;,2004.4.44以下错误的程序段是 A)char s6=abcd;B)char t=abcd,*s=t;C)char s6;s=abcd;D)char s6;strcpy(s,abcd);,字符数组与指针3-2,例以下能正确进行字符串赋值的是 A)char st4=Good;B)char st5;st0=G;C)char*st;*st=Good;D)char st5=G,o,o,d;,2009.9.37若有:char*p;则选项中正确的是 A)char st=string;p=st;B)scanf(%s,p);C)p=getchar();D)*p=string;,字符数组与指针3-3,2006.4.15以下能正确进行字符串赋值的是 A)char st=064;B)char st=kx43;C)char st=;D)char st=0;,10,本课小结,字符数组与字符指针,ASCII 码与转义字符,字符串函数,0与0,A与A,课后题:大小写转换,请编写函数fun,它的功能是:将s所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。void fun(char*s),

    注意事项

    本文(字符串与字符指针.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开