首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:计算S所指字符串中含有t所指字符串的数目,并作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #inc
给定程序MODI1.C中函数fun的功能是:计算S所指字符串中含有t所指字符串的数目,并作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #inc
admin
2020-11-27
52
问题
给定程序MODI1.C中函数fun的功能是:计算S所指字符串中含有t所指字符串的数目,并作为函数值返回。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
#define N 80
int fun(char*s,char*t)
{ int n;
char*p,*r;
n=0;
while (*s)
{p=s;
/**********found**********/
r=p;
while(*r)
if(*r==*p) {r++, p++;}
else break;
/**********found**********/
if(*r=0)
n++;
s++;
}
return n;
}
main()
{ char a[N],b[N];int m;
printf("\nPlease enter string
a:");get:s(a);
print:f("\nPlease enter substring
b:");gets(b);
m=fun(a,b);
printf("\nThe result is:m=
%d\n",m);
}
选项
答案
(1)r=t ; (2)if(*r==0)
解析
(1)根据“while(*r)if(*r==*p){r++;p++;}”可知该循环是比较r和p指向的字符串是否相等,本题的要求是计算字符串中含有某子串的数目,p指向的源字符串s,所以r应指向的是字符串t,故第一标识下应改成“r=t:”。
(2)根据题意第二标识下“if(*r==0)”应该是判断r是否指向字符串尾,在C语言中,等于是用“==”标识,因此第二标识下应改成“if(*r==0)”。
转载请注明原文地址:https://kaotiyun.com/show/3a3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includemain(){intc[6]={10,20,30,40,50,60},*p,*s;P=c;S=&c[5];printf("%dha",s-P);}程序运行后的
若有以下程序main(){inta=-2,b=0;while(a++)++b;printf("%d,%dha",a,b);}则程序的输出结果是
以下关于return语句的叙述中正确的是
以下选项中,合法的一组C语言数值常量是()。
设有某函数的说明为int*func(inta[10],intn);则下列叙述中,正确的是
对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是
在软件开发中,需求分析阶段可以使用的工具是()。
由以下while构成的循环,循环体执行的次数是intk=0;while(k=1)k++;
某棵树中共有25个节点,且只有度为3的节点和叶子节点,其中叶子节点有7个,则该树中度为3的节点数为()。
数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下面图符名标识的图符不属于数据流图合法图符的是
随机试题
车削时,传递切削热量最多的是()
体现“以泻为清”治法的方剂是()(1994年第49题)
A.线粒体B.胞液C.内质网D.溶酶体1分子糖原经糖酵解净生成
人体肠道细菌能合成的维生素有()。
下列哪项不属于β-内酰胺抗生素
下列关于抵押对抵押权人的效力的论述中,不正确的是()。
我国实行对外开放,发展对外经济关系始终要坚持的原则是()。
A、 B、 C、 D、 E、 B
“5W模式”(上财2010研;北邮2007研)
下列情形中,收养关系有效的是()。
最新回复
(
0
)