由于BF算法(暴力匹配算法)是一种朴素的字符串匹配算法,其实现比较简单,以下是一个用C语言实现的BF算法求子串的代码示例:

#include <stdio.h>
#include <string.h>
 
int main()
{
    char text[100], pattern[100];
    int i, j, len1, len2, found;
 
    printf("Enter the text: ");
    scanf("%s", text);
 
    printf("Enter the pattern: ");
    scanf("%s", pattern);
 
    len1 = strlen(text);
    len2 = strlen(pattern);
 
    for(i=0; i<=len1-len2; i++)
    {
        found = 1;
        for(j=0; j<len2; j++)
        {
            if(text[i+j] != pattern[j])
            {
                found = 0;
                break;
            }
        }
        if(found == 1)
        {
            printf("Pattern found at position %d\n", i+1);
        }
    }
    if(found == 0)
    {
        printf("Pattern not found in the text.\n");
    }
 
    return 0;
}

在上述代码中,我们首先输入了一个文本字符串和一个模式字符串,然后通过循环遍历文本字符串中的每一个可能的子串,再通过内部循环来比较该子串是否与模式字符串匹配。如果匹配成功,则输出该子串在文本字符串中的起始位置;否则,输出未找到匹配的提示信息

c语言 用bf算法求子串代码

原文地址: https://www.cveoy.top/t/topic/doCn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录