C語(yǔ)言search函數(shù)的高級(jí)應(yīng)用案例

小樊
83
2024-08-06 18:32:15

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

// Function to search for a substring in a given string
int search(char *str, char *substr) {
    int i, j, start, found;

    for (i = 0; str[i] != '\0'; i++) {
        start = i;
        found = 1;

        for (j = 0; substr[j] != '\0'; j++) {
            if (str[start] != substr[j]) {
                found = 0;
                break;
            }
            start++;
        }

        if (found) {
            return i;
        }
    }

    return -1;
}

int main() {
    char str[] = "Hello, world!";
    char substr[] = "world";

    int index = search(str, substr);

    if (index != -1) {
        printf("Substring found at index %d\n", index);
    } else {
        printf("Substring not found\n");
    }

    return 0;
}

這是一個(gè)簡(jiǎn)單的C語(yǔ)言程序,演示了如何使用search函數(shù)來(lái)在一個(gè)字符串中搜索一個(gè)子字符串。在這個(gè)例子中,我們定義了一個(gè)search函數(shù),它接受兩個(gè)參數(shù):一個(gè)字符串和一個(gè)子字符串,并返回子字符串在字符串中第一次出現(xiàn)的位置。在main函數(shù)中,我們使用這個(gè)search函數(shù)來(lái)搜索字符串"Hello, world!“中的子字符串"world”。如果子字符串存在,則打印它在字符串中的位置;否則打印"Substring not found"。運(yùn)行程序后,輸出結(jié)果應(yīng)該是"Substring found at index 7"。

0