16,471
社区成员
发帖
与我相关
我的任务
分享
/***************************************************
* 功 能:
* 从最大五个汉字分词
* 参 数:
* FILE *fpIn:待分词文件
* FILE *fpOut:分词输出文件
* 返回值:
*
***************************************************/
# include "stdafx.h"
# include "myheader.h"
extern FILE *fpIn;
extern FILE *fpOut;
extern FILE *fpWordList;
bool fnMaxFenCi5()
{
char szBuf[13];
memset(szBuf,NULL,sizeof(char) * 13);
strcpy(szBuf,fnReadWord5(fpIn));
if(fnCompareWord(szBuf,fpWordList) == true)
{
fputs(szBuf,fpOut); //如果这五个是单词,写入输出文件
return true;
}
else
{ //如果这五个不是单词,读四个
fseek(fpIn,-10,SEEK_CUR);
memset(szBuf,NULL,sizeof(char) * 13);
strcpy(szBuf,fnReadWord4(fpIn));
if(fnCompareWord(szBuf,fpWordList) == true)
{ //如果这四个是单词,写入输出文件
fputs(szBuf,fpOut);
return true;
}
else
{ //如果这四个不是单词,读三个
fseek(fpIn,-8,SEEK_CUR);
memset(szBuf,NULL,sizeof(char) * 13);
strcpy(szBuf,fnReadWord3(fpIn));
if(fnCompareWord(szBuf,fpWordList) == true)
{ //如果这三个是单词,写入输出文件
fputs(szBuf,fpOut);
return true;
}
else
{ //如果这三个不是单词,读两个
fseek(fpIn,-6,SEEK_CUR);
memset(szBuf,NULL,sizeof(char) * 13);
strcpy(szBuf,fnReadWord2(fpIn));
if(fnCompareWord(szBuf,fpWordList) == true)
{ //如果这两个是单词,写入输出文件
fputs(szBuf,fpOut);
return true;
}
else
{ //如果这两个不是单词,读一个
fseek(fpIn,-4,SEEK_CUR);
memset(szBuf,NULL,sizeof(char) * 13);
strcpy(szBuf,fnReadWord1(fpIn));
fputs(szBuf,fpOut);
return true;
}
}
}
}
}