帮我做一下三级网络技术的编程题

来源:百度知道 编辑:UC知道 时间:2024/07/02 11:57:01
编写一个函数findstr(char *str,char *substr),该函数统计一个长度为2的子字符串sunbstr在另一个字符串str中出现的次数,该次数作为函数值返回。
例如,假定输入字符串为“asd asasdfg asd as zx67 asd mklo”,子字符串为“as”,函数返回值是6。
函数ReadWrite()实现从文件in.dat中读取两个字符串,并调用函数findstr(),最后把结果输出到文件out.Dat中。

编写一个函数findStr(char *str,char *substr),该函数统计一个长度为2的子字符串在另一个字符串中出现的次数。例如,假定输入的字符串为"asd asasdfg asd as zx67 asd mklo",子字符串为"as",函数返回值是6。
函数ReadWrite()实现从文件in.dat中读取两个字符串,并调用函数findStr(),最后把结果输出到文件out.dat中。
注意:部分源程序存在文件prog1.c中。
请勿改动主函数main()和其它函数中的任何内容,仅在函数findStr()的花括号中填入你编写的若干语句。
#include <stdio.h>
#include <string.h>
#include <conio.h>

int findStr(char *str,char *substr)
{ int n=0;
char *p , *r;
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 ;

clrscr() ;
printf("输入原字符串:") ;
gets(str) ;
printf("输入子字符串:") ;
gets(substr) ;
puts(str) ;
puts(substr) ;
n=findStr(str, substr) ;
printf("n=%d\n", n) ;
ReadW