编写一个函数totsubstrnum(charstr,charsubstr),它的功能是:统计字符串substr在字符串str中出现的次数
#include<stdio.h>
int count(char*str,char*substr)
{
int i,j,k,num=0;
for(i=0; str[i]!='\0'; i++)
for(j=i,k=0; substr[k]==str[j]; k++,j++)
if(substr[k+1]=='\0')
{
num++;
break;
}
return(num);
}
int main()
{
char str[80],substr[80];
int n;
gets(str);
gets(substr);
printf("%d\n",count(str,substr));
return 0;
}
参考这个 https://ask.csdn.net/questions/7523308?spm=1005.2026.3001.5622
#include <stdio.h>
#include <string.h>
int totsubstrnum(char *str, char *substr);
void main()
{
char str[80], substr[80];
gets(str);
gets(substr);
int res = totsubstrnum(str, substr);
printf("%d",res);
}
int totsubstrnum(char *str, char *substr)
{
int n, m, count = 0, i;
n = strlen(str);
m = strlen(substr);
for (i = 0; i <= n - m; i++)
{
if (strncmp(str + i, substr, m) == 0)
{
count++;
i += m - 1;
}
else
continue;
}
return count;
}