首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:计算s所指字符串中含有t所指字符串的数目,并作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #inc
给定程序MODll.C中函数fun的功能是:计算s所指字符串中含有t所指字符串的数目,并作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #inc
admin
2015-06-08
19
问题
给定程序MODll.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:”); gets(a);
printf(“\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://jikaoti.com/ti/WUn0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列函数定义中,会出现编译错误的是______。
有以下函数定义:voidfun(intn,doublex){……}若以下选项中的变量都已正确定义并赋值,则对函数fun正确调用语句是______。
有如下程序main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf("%f\n",
下面invert函数的功能是将一个字符串str的内容颠倒过来。请填空。 #include<string.h> voidinvert(charstr[]) {inti,j【】; for(i=0,j=strlen(str)
库函数strcpy用以复制字符串,若有以下定义和语句:charstr1[]="china",str2[10],*str3,*str4="china";则对库函数strcpy的正确的调用是_______。
请选出以下程序的输出结果_______。#include<stdio.h>sub(int*s,inty){staticintt=3,y=s[t];t-;}main(){inta[]={
请读程序:#include<stdio.h>func(inta,intb){intc;c=a+b;returnc;}main(){intx=
随机试题
科教兴国战略主要是指()。
Afathersatathisdesklookingathismonthlybillsverycarefullywhenhisyoungsonrushedinandannounced."Dad,【C1】_
食管、胃底静脉破裂出血十二指肠球部以下出血
A、精B、气C、神D、血E、津充塞宇宙之中的无形而运动不息的极细微物质,构成宇宙万物的本原是()
高性能混凝土的特征之一是()。
下列不属于内部控制的基本要素的是()。
温州历史上以手工业发达,包括()。
拉动型控制的特点是集中控制。()
三国鼎立局面的关键性战争是()。
[2008年1月]若△ABC的三边为a、b、c,且满足a2+b2+c2=ab+ac+bc,则△ABC为()。
最新回复
(
0
)