首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串; 若未找到,则函数值为NULL。 例如,当字符串中的内容为:“abcdabfabcdx”,
给定程序MODll.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串; 若未找到,则函数值为NULL。 例如,当字符串中的内容为:“abcdabfabcdx”,
admin
2015-06-08
39
问题
给定程序MODll.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;
若未找到,则函数值为NULL。
例如,当字符串中的内容为:“abcdabfabcdx”,t中的内容为:“ab”时,输出结果应是:abcdx。
当字符串中的内容为:“abcdabfabcdx”,t中的内容为:“abd”时,则程序输出未找到信息:not be 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(“inPlease enter string
S:”); scanf(“%s”,s);
printf(“inPlease enter substring
t:”);scanf(“%s”,t);
P=fun(s,t);
if(P)printf(“inThe result is:
%s\n”,P);
else printf(“inNot found!\n”);
}
选项
答案
(1)a=NuLL; (2)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/2aJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有如下程序:longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf("%ld\n",fib
有如下程序段int*p,a=10,b=1;p=&a;a=*p+b;执行该程序段后,a的值为______。
能正确表示逻辑关系""a≥10或a≤0""的C语言表达式是______。
设血型占2个字节,则unsignedint所能表示的数据范围是______。
请读程序片段(字符串内没有空格字符):printf("%d\n",strlen("ATS\n012\1\\"));上面程序片段的输出结果是_______。
请读程序:#include<stdio.h>func(inta,intb){intc;c=a+b;returnc;}main(){intx=
下述关于数据库系统的叙述中正确的是_______。
数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是_______。
有以下程序(提示,程序中fseek(fp,-2L*sizeof(int),SEEK_END);语句的作用是使位置指针从文件末尾向前移2*sizeof(int)字节):#include<stdio.h>main(){FILE
阅读以下函数:fun(char*s1,char*s2){inti=0;while(s1[i]==s2[i]&&s2[i]!=’\0’)i++;return(s1[i]==&&s2{i)!==’\0’)
随机试题
濡脉的脉象是
糖尿病患者不宜选用的药物剂型是()。
一足部患有严重溃疡的糖尿病病人,经治疗病情未减轻,且有发生败血症的危险,此时为保证病人的生命而需要对病人截肢,这里包含的冲突是()
建设单位不得以任何理由要求设计单位、()擅自修改经审查合格的节能设计文件,降低建筑节能标准。
关于计算个人所得税时可扣除的财产原值,下列表述正确的是()。
新课改实施中,小学阶段主要是()。(2016.广西)
现代女性文学之所以不同于传统的女性写作.根本原因就在于她具有丰富的现代人文精神内涵,她以女性为经验主体、思维主体、审美主体和言说主体来关注社会、反映现实。从百年以来中国女性文学成长的经历来看,从冰心到丁玲,从舒婷到张洁,从铁凝到迟子建。这些女性作家的代表都
现在的社会,“熊孩子”现象频频发生,“熊孩子”现象指的是,调皮的孩子,岁数小不懂事,并且没有受到良好的家庭教育,经常会做出一些不可理喻的、带有破坏性的事情。科学研究,成为“熊孩子”其实与内心的忧郁有关,七成的“熊孩子”都有不同程度的忧郁倾向。有些专家认为,
在EDI系统中,将用户格式的文件转为标准EDI格式的文件通常需要经过两个步骤:第一步将用户格式文件映射为【 】文件,第二步再将该映射生成的文件翻译为标准EDI格式文件。
A、Becausetheyarelesslikelytosuffermemoryloss.B、Becausetheytendtobemorediligentlanguagelearners.C、Becausethey
最新回复
(
0
)