函数封装,实现字符串匹配

这段代码演示了如何使用C语言实现BF(BruteForce,暴力)字符串匹配算法,该算法用于在一个字符串中查找子串是否存在及其位置。示例中,字符串a[]是主字符串,b[]是模式字符串,BF函数检查b[]是否在a[]中出现并打印出对应下标。
  1 #include<stdio.h>
  2 #include<string.h>
  3 void BF(char a[],char b[]){
  4 int s=strlen(a);
  5   int n=strlen(b);
  6   int j=0,i=0;
  7   while(i<s&&j<n){
  8       if(a[i]==b[j])
  9         { j++; i++;  
 10           }
 11         else{
 12        i=i-j+1;  j=0;}
 13      }                                        
 14        if(j==n)
 15          printf("在下标%d处出现\n",i-j);
 16      else
 17          printf("没有出现\n");
 18 
 19 }
 20 int main(int argc, const char *argv[])
 21 {
 22 char a[]="ababcabcdabcde";
 23 char b[]="abca";
 24 BF(a,b);
 25     return 0;
 26 }   

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值