问答题

函数fun()的功能是:从s所指字符串中,找出与t所指字符串相同的子串的个数作为函数值返回。例如,当s所指字符串中的内容为”abcdabfab”,t所指字符串的内容为”ab”,则函数返回整数3。
请改正程序中的错误,使它能得出正确的结果。
#include <stdio.h>
#include <string.h>
int fun(char *s,char *t)

int n;char *p,*r;
n=0;
while(*s)
p=s;r=t;
while(*r)
if(*r==*p)
/**********found**********/
r++;p++

else break;
/**********found**********/
if(r==’\0’)
n++;
s++;

return n;

main()

char s[100],t[100];int m;
printf("\nPlease enter string S:");scanf("%s",s);
printf("\nPlease enter substring t:");scanf("%s",t);
m=fun(s,t);
printf("\nThe result is:m=%d\n",m);

【参考答案】

(1)r++;p++; (2)if(*r==’\0’)