编程题 编写一个函数,该函数可以统计一个长度为2的字符串在一个字符串的次数。
例如,假定输入的字符串为:asd asasdfg asd as zx67 asd mklo,子字符串为as,则应输出6。
请勿改动主函数 main和其他函数中的的任何内容,仅在函数 fun的花括号中填入所编写的若干语句。
#include <stdio.h>
#include <string.h>
#include <conio.h>
int fun(char *str,char *substr)
{
int n;
char *p,*r;
n=0;
while (*str)
{
考试站网校 p=str;
r=substr;
while(*r)
if(*r= =*p)
{
r++;
p++;
}
else
break;
if(*r= =’\0’)}
n++;
str++;
}
return n;
}
main()
{
char str[81],substr[3];
int n;
FILE *out;
printf("输入主字符串: ");
gets(str);
printf("输入子字符串: ");
gets(substr);
puts(str);
puts(substr);
n=fun(str,substr);
printf("n=%d\n",n);
out=fopen ("out.dat", "w");
strcpy(str, "asd asasdfg asd as zx67 asd mklo");
strcpy(substr, "as");
fprintf(out, "%d", fun(str, substr));
fclose (out );
}