首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请补充函数proc(),该函数可以统计一个长度为n的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为:asd ascasdfg asd as as mlosd,子字符串为asd,则应输出3。 注意:部分源程序给出如下。 请勿改动函
请补充函数proc(),该函数可以统计一个长度为n的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为:asd ascasdfg asd as as mlosd,子字符串为asd,则应输出3。 注意:部分源程序给出如下。 请勿改动函
admin
2013-03-25
68
问题
请补充函数proc(),该函数可以统计一个长度为n的字符串在另一个字符串中出现的次数。例如,假定输入的字符串为:asd ascasdfg asd as as mlosd,子字符串为asd,则应输出3。
注意:部分源程序给出如下。
请勿改动函数main()和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include
#inelude
#include
#include
int proc(char * str.char * sub)
{
int n;
char * p,* r;
【1】;
while(* str)
{
p=str;
r=sub;
while(* r)
if(【2】)
{
r++;
p++;
}
else
break;
if(【3】 )
n++;
str++;
}
return n;
}
void main()
{
char str[81],sub[3];
int n;
system("CLS");
printf("输入主字符串:");
gets(str);
printf("输入子字符串:");
gets(sub);
puts(str);
puts(sub);
n=proe(str,sub);
printf("n:%d\n",n);
}
选项
答案
【1】n=0【2】*r==*p【3】*r==’\0’
解析
由函数proc可知,变量n为字符串str中子字符串的个数,其初始值为0,因此,【1】处填“n=0”。字符指针变量p和r分别指向字符串和子字符串,要对其指向的每一个字符进行比较,因此,【2】处填“*r==*p”。每比较完一次。要检查指针r是否指向子字符串的结束位置,如果是说明字符串中包含一个子字符串,因此,【3】处填“*r==’\0’”。
转载请注明原文地址:https://www.kaotiyun.com/show/8XJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下函数值的类型是______。fun(floatx){floaty;y=3*x-4;returny;}
下列有关格式输入函数scanf的叙述中正确的是()
下列语句的输出结果是【】。chara=3;printf("%d,%o,%x,%u\n",a,a,a,a);
函数fseek(pf,OL,SEEK_END)中的SEEK_END代表的起始点是
语句int(*ptr)();的含义是
下面函数调用语句含有实参的个数为func((exp1,exp2),(exp3,exp4,exp5));
若有如下程序:main(){intx=5,y,*t;t=&x;y=++(*t);printf("%d,%d",x,y);}则程序执行后的x值为【】,y的值为【】。
若有如下程序:voidsub(){staticintx=6;x/=2;printf("%d",x);}main(){intm;for(m=0;m<=2;m++)sub();}则程序
随机试题
A.肾盂B.肾间质C.肾小球D.肾皮质上行性感染引起的肾盂肾炎首先累及
乙醇在片剂制备中可作为哪种辅料
传染性非典型肺炎的氧疗指征是
空头支票
人民法院保全与会员资格相应的会员资格费或交易席位,应当依法裁定()。
下列关于客户资产保护的表述,错误的是()。
A、 B、 C、 D、 A
执行下段程序后 MOV CX, 5 MOV AX, 50 LPl: SUB AX, CX LOOP LPl HLT AX=( )。
有以下程序: #include<stdio.h> structtt{intx;structtt*y;}*p; structtta[4]={20,a+1,15,a+2,30,a+3,17,a}; main() { inti;
Solar-generatedelectricitydocsnotcarrythehealthorenvironmentalrisksofnuclearenergy.Wecanneverrunoutofsolaren
最新回复
(
0
)