題目要求: 如:大字符串asasd asa 小字符串as 則n=3; 解答如下: 這個不難看懂,就不加注釋了。 [cpp] nt findStr(char *str, char *substr) { char *p=str,*q=substr,*tem1=NULL,*tem2=NULL; int slen=strlen(str),sublen=strlen(substr); int count=0; while(p-str<slen) { tem1=p; tem2=q; while(*tem1==*tem2 && tem2-substr<sublen) { tem1++; tem2++; if(tem2-substr==sublen) { count++; break; } } p++; } return count; } 用數組 實現 int findStr(char *str, char *substr) { int i=0,j=0; int tem1=i,tem2=j; int count=0; while(str[i]!='\0') { tem1=i; tem2=j; while(str[tem1]==substr[tem2] && substr[tem2]!='\0') { www.2cto.com tem1++; tem2++; if(substr[tem2]=='\0') { count++; break; } } i++; } return count; }