首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t所指字符串的内容为“ab”,则函数返回整数3。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动m
下列给定程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t所指字符串的内容为“ab”,则函数返回整数3。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动m
admin
2017-02-24
64
问题
下列给定程序中,函数fun的功能是:从s所指字符串中,找出t所指字符串的个数作为函数值返回。例如,当s所指字符串中的内容为“abcdabfab”,t所指字符串的内容为“ab”,则函数返回整数3。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdlib.h>
#include<conio.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++;p++}
else break;
/*********found*********/
if(r==’\0’)
n++;
s++;
}
return nj
}
void main()
{
char s[100],t[100];int:m;
system("CLS");
printf("\nplease enter string s:");
Scanf("%s",s);
printf("\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’)
解析
本题考查:if语句,考生需要根据题意确定if语句的判断条件;字符串结束标识,所有的字符串都要以‘\0’结尾,上机考试常考知识点,考生一定要牢记;复合赋值运算,常用于循环控制和变量的累加、累乘。
从字符串s中找出子串t的方法是:从第1个字符开始,对字符串进行遍历,若s串的当前字符等于t串的第1个字符,两个字符串的指针自动加1,继续比较下一个字符;若比较至字符串t的结尾,则跳出循环;若s串的字符与t串的字符不对应相同,则继续对s串的下一个字符进行处理。
转载请注明原文地址:https://kaotiyun.com/show/TMDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若要用函数fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件()。
下列程序的输出结果是()。#include<stdio.h>main(){iuta=2,b=3,p;p=f(a,B)printf("%d",p);}intf(a,b){intc;if(a>B)c=1;e1Seif(a==
阅读下列程序,则程序的输出结果为______。#include"stdio.h"structty{intdata;charc;};main(){structtya={30,’x’};fun(a);printf("%d%c
有以下程序#include<stdio.h>main(){FILE*fp;inti=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i;fprintf(f
在C语言中,变量的隐含存储类别是
有以下程序main(){intx=0,y=0,i;for(i=1;++i){if(i%2==0){x++;continue;}if(i%5==0){y++;break;}}printf("
在C语言中,函数返回值的类型最终取决于
在执行下述程序时,若从键盘输入6和8,则结果为main(){inta,b,s;scanf("%d%d",&a,&b);S=aif(a<B)s=b;S*=S;printf("%d",s);}
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
对下述程序的判断中,正确的是#includevoidmain(){char*p,s[128];p=s;while(strcmp(s,"End")){printf("Inputastring:");gets(s);w
随机试题
甲股份有限公司为募集资金,拟于2008年5月公开发行公司债券,确定发行方案如下:(1)经过清产核资,公司现有净资产为5000万元;(2)公司上一次发行债券的数额为1000万元,尚未到期,本次拟发行债券1500万元;(3)为发行公司债券,公司成立公司债券发行
属于空腔性病变的是
委托代理链最上方的是()。
已知工作A的紧后工作是B和C,工作B的最迟开始时间为14,最早开始时间为10;工作C的最迟完成时间为16,最早完成时间为14;工作A的自由时差为5天,则工作A的总时差为()天。
老李的家庭资产负债表中,期初净值为58万元(成本)、105万元(市价),期末净值为68万元(成本)、123万元(市价)。则家庭资产账面价值变动为()。
(2011年)甲公司产品需经过两道工序加工完成,原材料在开始生产时一次投入,生产成本在完工产品和在产品之间的分配采用约当产量比例法。2011年2月与产品生产成本有关的资料如下: (1)月初在产品费用为:直接材料120万元,直接人工60万元,制造费用20
在定向营销时,银行应重点营销优质客户,但在办理业务时应做到公平,不可区别对待。()
根据以下资料,回答问题。2013年上半年,浙江省规模以上工业企业营业收入和利润总额分别为28544.6亿元和1380.2亿元,同比分别增长8.1%和13.0%,增幅比上年同期分别回升0.6和3.4个百分点;企业亏损面和亏损率分别为20%和12.7%,增幅
在教育测量调查中,适用于次数、百分比统计而不适用于中位数、等级相关系数统计的测量类型是()。
HowtoWriteaThesisI.Introductionpart—writingthe【B1】afterfinishingtherest【B1】______—includingahookatthebegin
最新回复
(
0
)