計算字串中子串出現的次數
串的模式匹配在資料結構中有kmp演算法,但這個演算法實現起來繁瑣,難度很大,所以對於一般來說,使用暴力法求解,設有字串str
和子串sub
,第一輪迴圈從str
的第乙個字元開始,設定乙個位置標號j
,再與子串sub
逐個比較,若比較相同的話,則位置標號向後移,比較下乙個字元,出現第乙個不相同字元則該輪比較結束,比較結束後若j
的值和sub
字串長度相同,則說明找到乙個子串,計數count
遞增,第二輪迴圈則從str
的第二個字元開始比較, 依次類推。
另外在string.h
有函式strstr()
,該函式返回在 haystack 中第一次出現 needle 字串的位置,如果未找到則返回 null。函式原型如下:
char
*strstr
(const
char
*haystack,
const
char
*needle)
#include
#include
intsubstring
(char
*str,
char
*sub)}if
(j ==
strlen
(sub))}
return count;
}int
main
(void
)
請輸入母串:abcaabcaadbbc
請輸入子串:bc
3
計算字串中子串出現的次數
2.計算字串中子串出現的次數利用輸入函式輸入任意兩個字串,請編寫程式求出第二個字串在第乙個字串 現的次數,即在第乙個字串中有幾個第二個字串。例1 輸入123sdk123dfg123121 123輸出 3 例2 輸入 1wdfw112sfrtes wq輸出 0 include include int ...
C語言字串拷貝經典
兩種方法 include int main void b i 0 重要 return 0 void copy0 char from,char to to 0 return void copy1 char from,char to to 0 return void copy2 char from,ch...
使用C語言實現字串中子字串的替換
描述 編寫乙個字串替換函式,如函式名為 strreplace char strsrc,char strfind,char strreplace strsrc為原字串,strfind是待替換的字串,strreplace為替換字串。舉個直觀的例子吧,如 abcdefghijklmnopqrstuvwxy...