首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODII.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串; 若未找到,则函数值为NULL。 例如,当字符串中的内容为:”abcdabfabcdx”,
给定程序MODII.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串; 若未找到,则函数值为NULL。 例如,当字符串中的内容为:”abcdabfabcdx”,
admin
2013-04-02
51
问题
给定程序MODII.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;
若未找到,则函数值为NULL。
例如,当字符串中的内容为:”abcdabfabcdx”,t中的内容为:”ab”时,输出结果应是:abcdx。
当字符串中的内容为:”abcdabfabcdx”,t中的内容为:”abd”时,则程序输出未找到信息:notbe found!。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
char * fun (char *s, char *t)
{
char *p , *r, *a;
/************found************/
a=Null;
while (*s)
{p = s; r = t;
while (*r)
/************found************/
if(r==p)
{r++; p++;}
else break;
if (*r == ’\0’) a = s;
s++;
}
return a ;
}
main()
{
char s[100], t[100], *p;
printf("\nPlease enter string S :"); scanf("%s", s);
printf("\nPlease enter substring t :"); scanf("%s", t);
p = fun(s, t);
if (p) printf("\nThe result is : %s\n", p);
else printf("\nNot found !\n");
}
选项
答案
a=NULL; if ( *r==*p )
解析
(1)第一个标识下面:语句“a=Null;”中的NuLL未定义。NULL代表空值,但程序中写成了NuLL。所以,改成“a=NULL;”。
(2)程序的主体是二重循环,其中外循环使指针s逐个指向字符串的字符,直到遇到串结束符退出循环,内循环检查指针p与r所指字符串是否匹配。因为这里p、r是指针,如果使用判断表达式“if(r==p)”,那么比较的是地址,而题目要求比较它们所指的字符。所以,改为:“if ( *r==*p )”。
转载请注明原文地址:https://kaotiyun.com/show/HDJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序的运行结果是:[]。fun(intt[],intn){inti,m;if(n=1)returnt[0];elseif(n>=2){m=fun(t,n-1);returnm;}
数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为[]。
以下叙述中错误的是______。
有以下程序 main() { char *p[]={"3697","2548"}; int i,j; long num=0; for(i=0;i<2;i++) {j=
“商品”与“顾客”两个实体集之间的联系一般是______。
对如下二叉树进行后序遍历的结果为______。
程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表结点,指针变量s总是作为头指针向链表的第—个结点。若有以下程序段 q=s; s=s->next; p=s; while(p->next) p
设有说明structDATE{intyear;intmonth;intday;};请写出一条定义语句,该语句定义d为上述结构体类型变量,并同时为其成员year、month、day依次赋初值2006、10、1:【】。
以下程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。 void f(int b[],int n,int flag) { int i,j,t; for(i=0;i<n-1;i++)
随机试题
容器中大量分子碰撞器壁的结果形成了气体对器壁的压力。压力就是单位面积容器壁面上所受的垂直力。()
某警犬队的警犬表现精神沉郁,喜卧厌动,活功时四肢无力,身躯摇晃。发热(40~41℃),持续3~5天后,有5~10天体温正常期,呈不规则间歇热型。渐进性贫血,结膜、黏膜苍白,食欲减少或废绝,营养不良,明显消瘦。触诊脾脏肿大:肾(双侧或单侧)肿大且疼痛,尿呈黄
城市维护建设税的计费基础是()。
甲公司欠张龙工程款人民币20万元,张龙初次做工程,要求甲公司支付20万元现金,甲公司告知张龙按照会计制度规定,无法支付现金,但可以开一张支票。让其自己到银行支取现金。张龙认真地查看了支票,上面记载有如下内容:金额20万元,收款人为张龙,出票日期为2013年
基金管理公司股东会依法可以行使的职权有()。Ⅰ.审议批准公司的年度财务预算方案Ⅱ.制订公司合并、分立、解散或者变更公司形式的方案Ⅲ.选举和更换董事Ⅳ.决定公司的经营方针和投资计划
“陕甘宁边区人民警察”是我国历史上最早的一支比较正规的人民警察队伍。()
王女士去超市购置了一批碗和碟,其中碗每只8元,碟每只5元,结账时这批碗和碟不超过18只,共计107元,则她购置的碗和碟分别有多少只?()
有两只桶,装有同样多的油。第一桶用去1/4,第二桶用去40%以后,再从第一桶取出8千克油倒入第二桶,这时第二桶油与第一桶油的比是13:14。则两桶原来各装有多少千克油?
Choosethecorrectletter,A,B,CorD.Writethecorrectletterinboxonyouranswersheet.Whatisthemainideaofthepass
花一周时间参加这样的会议将会是浪费时间。(awasteof)
最新回复
(
0
)