我的一位朋友需要幫助統計字符串中子字符串的出現次數,並且我提出了以下代碼。有沒有人知道一個更好的方法來做到這一點?在C中計數子字符串
#include "stdio.h"
#include "string.h"
int main(int argc, char *argv[])
{
char str1[50], str2[50];
int i, j, l1, l2, match, count;
printf("String 1:\n");
gets(str2);
printf("String 2:\n");
gets(str1);
l1 = strlen(str1);
l2 = strlen(str2);
count = 0;
for(i = 0; i < l1; i++)
{
match = 0;
for(j = 0; j < l2; j++)
{
if(str1[i + j] == str2[j])
{
match++;
}
}
if(match == l2)
{
count++;
}
}
printf("Substrings: %d\n", count);
}
你爲什麼不使你的功課自己嗎? – GreenScape
大聲笑它不是我的家庭作業,你可以看到我已經做到了......我只是在尋找更好的解決方案。 – guhemama
使用'#include'用尖括號代替引號;這是標準說你應該做的。儘管引號有效,但它們是非常規的。 –