首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t
admin
2018-10-21
37
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t所指字符串的内容为“ab”,则函数返回整数3。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#~nclude<corlio.h>
#include<stdio.h>
#include<string.h>
int fun(char*s,char*t)
{
int n;char*p,*r;
n=0;
while(*s)
{
p=s;
r=t;
while(*r)
/*********found*********/
if(*r=*p){r++;*++}
else break;
/*********found*********/
if(r;=’\0’)
n++;
s++;
}
return n
}
void main()
{
char s[100],t[100];int m;
system("CLS");
printf("\nPlease enter string s:");
scanf("%s",s);
print:f("\nPlease enter substring t:”");
scanf("%s",t);
m=fun(s,t);
printf("\nThe result is:m=%d\n",m);
}
选项
答案
(1)if(*r==*p){r++;p++;} (2)if(*r==’\0’)
解析
从字符串s中找出子串t的方法是:从第1个字符开始,对字符串进行遍历,若s串的当前字符等于t串的第1个字符,两个字符串的指针自动加1,继续比较下一个字符;若比较至字符串t的结尾,则跳出循环;若s串的字符与t串的字符不对应相同,则继续对s串的下一个字符进行处理。
转载请注明原文地址:https://kaotiyun.com/show/5Mxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后输入:3,abcde<回车>,则输出结果是______。#include<string.h>move(char*str,intn){charcemp;inti;temp=str[n-1];f
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],i;for(i=0;i<10;i++)scanf("%d",&x[i]);for([11];i<10;i++)
在下列字符序列中,合法的标识符是()
若有如下程序:voida(char*p,charc){while(*p){if(*p==c)*p=c-’b’+’B’;;p++;}}main(){chars[50]="abcdeeffg
以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序;voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1,j<n;j+
设有定义:inta=2,b=3,c=4;,则以下选项中值为0的表达式是()。
下面程序段的运行结果是()。#include<stdio.h>voidmain(){charstr[]="ABC",*p=str;pfintf("%d\n",*(p+3));}
C语言可执行程序的开始执行点是()。
运行以下程序后,如果从键盘上输入6514<回车>,则输出结果为______。main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!
下列程序的输出结果是______。main(){intn;(n=6*4,n+6),n*2;printf("n=%d\n",n);}
随机试题
苏绣始于春秋时期,明代是苏绣的全盛时期。()
在引起急性胰腺炎的病因中,下列哪项是错误的
测定体育课的密度时,通常把教师要求学生跑步取回器械的时间作为练习时间。()
学科中心主义认为学校课程应该以()来编制。
一、注意事项1.申论考试是对考生阅读理解能力、综合分析能力、提出和解决问题能力以及文字表达能力的测试。2.仔细阅读给定资料,按照后面提出的“申论要求”。二、给定资料资料显示从2003年至2007年,仅山东省就有共206家韩资企业非
“十四五”是推动黄河流域生态保护和高质量发展的关键时期,要全方位贯彻()“四水四定”原则,走好水安全有效保障、水资源高效利用、水生态明显改善的集约节约发展之路。
以下叙述中错误的是
Thereportersweremostinterestedinhearinghis___________viewsonthesituationinthePersianGulf.
Noneofusexpectedthepresidentto_attheparty.Wethoughthewasstillinhospital.
TheAmericaneconomicsystemisorganizedaroundabasicallyprivateenterprise,marketorientedeconomyinwhichconsumerslarg
最新回复
(
0
)