输入一个字符串,计算字符串中子串出现的次数

  1 # include
  2 # include
  3
  4 int sub(char *p1, int l1, char *p2, int l2)
  5 {
  6     int i, n=0;
  7
  8     for(i=0;i<=l1-l2;i++)
  9     {
 10         if(strncmp(p1,p2,l2)==0)
 11         {
 12             n++;
 13             p1=p1+l2-1;
 14         }
 15         p1++;
 16     }
 17
 18     return n;
 19 }
 20 
 21 int main()
 22 {
 23     char str1[100],str2[100];
 24     int len1, len2;
 25
 26     printf("Please input astring and a substring:\n");
 27     scanf("%s %s",str1,str2);
 28
 29     len1 = strlen(str1);
 30     len2 = strlen(str2);
 31     printf("The number of %s in %s is %d\n",str2,str1,sub(str1, len1, str2, len2)); 32
 33     return 0;
 34 }

你可能感兴趣的:(C语言基础)