问答题
采用顺序结构存储串,编写一个实现串通配符匹配的函数pattern_index(),其中的通配符只有'?',它可以和任一字符匹配成功,例如,pattern_index("?re","there are")返回的结果是3。
【正确答案】
本题增加了'?'的处理功能。实现代码如下: int pattern_index(Str *subs,Str *s) { int i,j,k; for(i=0;s->ch[i];++i) for(j=i,k=0;(s->ch[j]==subs->ch[k])||(subs->ch[k]=='?');++j,++k) if(subs->ch[k+1]=='/0') return i+1; return -1; }
【答案解析】
提交答案
关闭