中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c語言怎么查找字符串出現次數

小億
193
2023-11-06 23:44:53
欄目: 編程語言

在C語言中,可以使用循環和條件判斷來查找字符串中某個子串的出現次數。以下是一個示例代碼:

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

int countOccurrences(const char *str, const char *subStr) {
    int count = 0;
    int subStrLen = strlen(subStr);
    
    while (*str) {
        if (strncmp(str, subStr, subStrLen) == 0) {
            count++;
        }
        str++;
    }
    
    return count;
}

int main() {
    char str[100];
    char subStr[100];
    
    printf("請輸入一個字符串:");
    fgets(str, sizeof(str), stdin);
    str[strcspn(str, "\n")] = '\0';  // 刪除換行符
    
    printf("請輸入要查找的子串:");
    fgets(subStr, sizeof(subStr), stdin);
    subStr[strcspn(subStr, "\n")] = '\0';  // 刪除換行符
    
    int occurrences = countOccurrences(str, subStr);
    
    printf("子串 \"%s\" 在字符串 \"%s\" 中出現了 %d 次。\n", subStr, str, occurrences);
    
    return 0;
}

在上面的代碼中,countOccurrences 函數用于計算子串在字符串中出現的次數。內部使用了 strncmp 函數來比較字符串,while 循環遍歷整個字符串,每次比較字符串的一部分是否與子串相等,如果相等則計數器加1,然后繼續循環。最后返回計數器的值。

main 函數中,首先接收用戶輸入的字符串和子串。然后調用 countOccurrences 函數來計算子串在字符串中出現的次數,并將結果打印出來。

注意:

  • 在程序中使用了 fgets 函數來讀取用戶輸入的字符串和子串,使用 strcspn 函數刪除輸入字符串中的換行符。
  • 該代碼只能計算子串在字符串中連續出現的次數,如果要計算非連續出現的次數,需要進行修改。

0
崇礼县| 海南省| 资阳市| 科尔| 华坪县| 隆昌县| 滨海县| 固镇县| 腾冲县| 鄂托克旗| 兴宁市| 永新县| 名山县| 桃园市| 临颍县| 呈贡县| 阿合奇县| 和顺县| 贵溪市| 龙岩市| 乐都县| 德钦县| 青海省| 黄龙县| 泾阳县| 广饶县| 分宜县| 朔州市| 宕昌县| 简阳市| 绥滨县| 和田县| 吉安县| 科技| 平江县| 平陆县| 龙州县| 江源县| 礼泉县| 抚州市| 会宁县|