溫馨提示×

C語言查找子串 的遞歸實現方法

小樊
86
2024-07-11 15:05:29
欄目: 編程語言

下面是一個使用遞歸實現的C語言函數,用于查找字符串中的子串:

#include <stdio.h>
#include <string.h>

int findSubstring(char *str, char *sub)
{
    if (*sub == '\0') {
        return 1;
    }
    
    if (*str == '\0') {
        return 0;
    }
    
    if (*str == *sub) {
        return findSubstring(str + 1, sub + 1);
    } else {
        return findSubstring(str + 1, sub);
    }
}

int main()
{
    char str[] = "hello world";
    char sub[] = "world";
    
    if (findSubstring(str, sub)) {
        printf("'%s' is a substring of '%s'\n", sub, str);
    } else {
        printf("'%s' is not a substring of '%s'\n", sub, str);
    }
    
    return 0;
}

在上面的代碼中,findSubstring函數遞歸地比較字符串str和子串sub,如果substr的子串,則返回1,否則返回0。通過調用main函數測試該函數,可以輸出是否子串是否存在。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女