资源描述:
《实验字符串题目及答》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验B字符串(共7题,其中最后1题为附加题)B1.C、按下列要求对B1.C程序进行改编。该程序的功能是:从键盘输入若干字符,直到输入换行符为止。统计并输出所输入的数字字符、大写字母、小写字母以及其他字符(不含换行字符)的个数。【重点:字符数组、字符串、gets函数】要求:(1)在程序中定义一个大小为80的字符数组;(2)调用gets函数(参见p177)实现字符串的输入。【提示:注意gets函数调用一次,可以接收一行字符,即一个字符串(遇到回车即结束接收)。程序运行时(输入提示及用户输入):程序运行结果(输
2、出提示及运行结果输出):请输入字符串:Abg23bs¿大写:1,小写:4,数字:2,其他:0请输入字符串:Thisisatest.¿大写:1,小写:10,数字:0,其他:4】B2.C*、编写一个能实现puts函数功能的子函数my_puts()。【提示:puts(str)函数的功能参见p177(把以首地址str开始的字符串显示在屏幕上,且具有自动换行功能)。程序运行时(输入提示及用户输入):程序运行结果(输出提示及运行结果输出):请输入一个字符串:GoodMorning¿您刚才输入的字符串是:GoodMor
3、ning请输入一个字符串:早上好¿您刚才输入的字符串是:早上好】B3.C、本程序的功能是求一个字符串的反向串。要求:在认真阅读并理解例6.27p185程序的基础上,将程序补充完整。B4.C、阅读理解题:本程序的功能是判断输入的一个字符串是否为回文串(回文:“12321”、“commoc”);该程序是在例6.27p185的基础上改编而成的。要求:通过测试、阅读编码、理解各段编码的功能。B5.C、本程序的功能是删除一个字符串中所有的空格字符。要求:在认真阅读并理解例6.25p183程序的基础上,将本程序补充完
4、整。B6.C、阅读理解题:本程序的功能是删除一个字符串中所有的指定字符。要求:通过测试、阅读编码、理解各段编码的功能。【提示:本程序是在例6.25p183的基础上改编而成的。程序运行时(输入提示及用户输入):程序运行结果(输出提示及运行结果输出):输入一个字符串:Thisisanapple.¿Thisisnpple.输入一个待删除的字符:a¿.输入一个字符串:Thisisanapple.¿Thisisanapple.输入一个待删除的字符:□¿】附加题:BX1、编写一个能统计出一个字符串中单词个数的程序。设
5、一行最多允许80个字符(单词之间以空格分隔)。【程序运行时(输入提示及用户输入):程序运行结果(输出提示及运行结果输出):Enterasentence:Thisisatest¿thereare4words.Enterasentence:GoodAfternoon¿thereare2words.】B1.C参考解答:#includeintmain(){intnsz=0,ndx=0,nxx=0,nqt=0i;/**/charch[80];inti;printf(“请输入字符串:”);gets(
6、ch);for(i=0;ch[i]!=’ ’;i++)if(ch[i]>=’0’&&ch[i]<=’9’)nsz++;elseif(ch[i]>=’A’&&ch[i]<=’Z’)ndx++;elseif(ch[i]>=’a’&&ch[i]<=’z’)nxx++;elsenqt++;/**/printf(“大写:%d,小写:%d,数字:%d,其他:%d”,ndx,nxx,nsz,nqt);return0;}B2.C的参考解答voidmy_puts(chara[]){/**/inti;for(i=0;a
7、[i]!=' ';i++)printf("%c",a[i]);printf("");/**/}B3.C的参考解答//本程序的功能是:求一个字符串的反向串。#includeintmain(){charstr[50],*p1,*p2,temp;printf("输入一个字符串:");/**/gets(str);p1=p2=str;while(*p1)p1++;p1--;while(p28、turn0;}B4.C阅读理解题//本程序的功能:判断输入的一个字符串是否为回文字串#includeintmain(){charstr[50],*p1,*p2;intflag=1;//先假设是回文,然后利用反证法进行求证。printf("输入一个字符串:");gets(str);/*设计思路:p1从串尾向串头行进,p2从串头向串位行进;在2者行进的过程中,若所指向的字符均相同,则为回文字串,否则不是。*/p1