c语言的问题.着急快点帮我写谢谢了

来源:百度知道 编辑:UC知道 时间:2024/07/04 13:02:13
在A字串中查找B字符,B串中可以使用‘?’,作为 通配符(代表一个字符) 资料哦给你了,编一下把

是用纯c写的,希望对你有所帮助。不懂的话,加我qq327775604
#include <stdio.h>
#define MaxSize 50
typedef struct
{
char ch[MaxSize];
int len;
}SqString;
void StrAssign(SqString &str,char cstr[])
{
int i;
for(i=0;cstr[i]!='\0';i++)
{
str.ch[i]=cstr[i];
}
str.len=i;
}
void pattern_index(SqString sqX,SqString sqD)
{
int i,num=0;
for(i=0;i<=sqD.len-sqX.len;i++)
{
printf("第%d次\n",i+1);
int flag=0;
for(int j=0;j<sqX.len;j++)
{
if((sqX.ch[j]!='?')&&(sqD.ch[i+j]!=sqX.ch[j]))
{
flag=1;
break;
}
}
if(flag==0)
{
num++;
for(int j=0;j<sqX.len;j++)
{
printf("%c",sqD.ch[i+j]);
}
printf("\n");
}
}
printf("总共的个数为%d\n",num);
}
int main()
{
char D