题目

请编写一个函数int pattern_index(char substr[],char str[]),该函数执行含通配符“?”的字符串的查找时,该通配符可以与任一个字符匹配成功。当子串substr在str中匹配查找成功时,返回子串substr在str中的位置,否则返回值为0。要求使用 for循环实现。输出结果如下:

子串起始位置:5

注意:部分源程序已存在文件test20_2.cpp中。

请勿修改主函数main和其他函数中的任何内容,仅在函数pattern_index的花括号中填写若干语句。

文件test20_2.cpp的内容如下:

include<iostream.h>

int pattern_index(char substr[],char str[])

{

}

void main ( )

{

char *substring,*string;

int same;

substring="???gram";

string="this program return index of substring";

same=pattern_index(substring, string);

if(same)

cout<<"子串起始位置: "<<same<<end1;

else

cout<<"匹配不成功" <<end1;

}

提示:未搜索到的试题可在搜索页快速提交,您可在会员中心"提交的题"快速查看答案。
答案
查看答案
搜题
相关试题

C语言中 while 和do-while循环的主要区别是

A.do-while的循环体至少无条件执行一次

B.while的循环控制条件比do-while的循环控制条件更严格

C.do-while允许从外部转到循环体内

D.do-while 的循环体不能是复合语句

滚动条的( ) 属性用于指定用户单击滚动条的滚动箭头时,Value属性值的改变量。

A、LargeChange

B、SmallChange

C、Value

D、Change

单击表单中的命令按钮,要求弹出一个“您好!”的消息对话框,应该在命令按钮的Click事件中编写代码:______=("您好!")

若在定义语句: int a,b,c,*p=&c; 之后,接着执行以下选项中的语句,则能正确执行的语句是

A ) scanf("%d",a,b,c);

B)scanf("%d%d%d",a,b,c);

C)scanf("%d",p);

D)scanf("%d",&p);

若用一个大小为6的数值来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为()。

A.1和5

B.2和4

C.4和2

D.5和1

关于我们  |  免责声明  |  联系我们  |  会员须知

Copyright © 奋学网(www.fxuexi.com)All Right Reserved.湘ICP备2021013332号-3

联系我们 会员中心
返回顶部