亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? operator.cpp

?? 分詞程序
?? CPP
字號:
/*
 *FileName:	Operator.cpp
 *Author:		vk
 *Create Date:	2005-11-16
 *Modify by:  	vk
 *Last Modify:	2005-11-17s
 */
#include "stdafx.h"
#include "Win32Cut.h"
char wtable[maxn][maxl];		//詞表,儲存中文詞匯
char buff[BUFSIZE];				//輸入緩沖區
char result[RESSIZE];			//分詞結果
int btp;						//緩沖區中當前已識別指針
int bp;							//緩沖區中當前開始識別指針
int bl;							//緩沖區有效長度
int wtsize;						//詞匯表大小
int isinit = 0;					//詞典是否初始化
FILE *fin,*fout;				//文件分詞時的輸入輸出文件

/*===========================================
函數:compare
功能:返回2個單元的比較結果,供qsort調用
=============================================*/
int compare(const void* a,const void* b){
	return strcmp((char*)a,(char*)b);
}

/*============================================
函數:init_table
參數:lexfilename  詞典文件路徑
功能:讀取字典并排序,初始化詞表
返回:成功ture,失敗false
=============================================*/
bool init_table(char* lexfilename){
	FILE* fwt;
	char line[100];
	int i;
	if(!(fwt = fopen(lexfilename,"r")))
		return false;
	for(i=0;;i++){
		if(fscanf(fwt,"%s",line) ==EOF)
			break;
		strcpy(wtable[i],line);
	}
	wtsize = i-1;
	//對詞表按字符串比較結果排序
	qsort(wtable,wtsize,maxl*sizeof(char),compare);
	fclose(fwt);
	isinit = 1;
	return true;
}

/*==============================================
函數:judge
參數:str 字符串
功能:對于給定字符串str,用二分法查找詞表,判斷該字符串是否是一個詞
返回:找到返回在詞表中的數組下標,否則返回-1
================================================*/
int judge(char *str){
	int low,mid,high;
	low = 0;
	high = wtsize;
	while(low <= high){
		mid = (low+high)/2;
		if(strcmp(str,wtable[mid]) ==0)
			return mid;
		else if(strcmp(str,wtable[mid]) >0)
			low = mid+1;
		else
			high = mid-1;
	}
	return -1;
}

/*================================================
函數:cut
功能:從緩沖區buff中取定長(maxl)串,用正向最大匹配算法找出這段字符串中
	  從串首開始的最長詞,并從存到結果中
返回:匹配成功1,否則0
==================================================*/
int cut(){
	char in[maxl];
	char temp[maxl];
	int i,k;
	k = bp;
	//從緩沖區里面讀取定長字串
	for(i=0;i<(maxl-1)&&buff[k]!=0;i++,k++){
		in[i] = buff[k];
	}
	//逐漸縮短字長進行匹配
	for(;i>0;i--){
		in[i] = 0;
		if(judge(in) != -1){//如果匹配成功
			//不過當前緩沖區指針與已匹配指針不一致,說明跳過了一段不能識別的字串,把這段字串加到結果中去
			if(btp != bp){
				for(k=btp;k<bp;k++){
					sprintf(temp,"%c",buff[k]);
					strcat(result,temp);
				}
				strcat(result,"/");
			}
			//把匹配成功的字串加到結果中去
			strcat(result,in);
			strcat(result,"/");
			//設置當前緩沖區指針和已匹配指針
			bp += i;
			btp = bp;
			return 1;
		}
	}
	return 0;
}
/*=================================================
函數:analyse
功能:屏幕分詞函數,循環調用cut函數,對緩沖區(即屏幕上的字串)進行切詞,
      如果切詞失敗,則試圖跳過一個或兩個字節再次匹配,直到匹配成功或者
	  到達緩沖區末尾。如果匹配成功則繼續調用cut;如果到達緩沖區末尾則輸
	  出到結果result數組,并返回
===================================================*/
void analyse(){
	btp = bp = 0;
	bl = strlen(buff);
	result[0] = 0;
	while(1){
		if(!cut()){//如果切詞失敗,則有可能是緩沖區末尾或者不能識別單詞
			while(bp<bl){
				if(buff[bp]<0)//是漢字
					bp ++;
				bp++;
				//跳過一個(漢)字進行再進行匹配,成功則跳出
				if(cut()==1)
					break;
			}
			if(bp >= bl){//如果緩沖區末尾,退出函數
				//加上不能識別的字串
				if(btp!=bl)
					strcat(result,&buff[btp]);
				return;
			}
		}
	}
	return;
}


//!!!!!!!以下函數為文件分詞使用

/*====================================================
函數:fillbuff
功能:當緩沖區不足時,將緩沖區剩余字串挪到頭部,并從輸入
      文件中填充緩沖區致緩沖區滿或文件末尾
返回:如果達到文件末尾1,否則0
======================================================*/
int fillbuff(){
	char ch;
	int i;
	for(i=0;bp<bl;i++,bp++)
		buff[i] = buff[bp];
	bp = 0;
	bl = i;
	while(bl<BUFSIZE){
		if(fscanf(fin,"%c",&ch)==EOF){
			buff[bl] = 0;
			return 1;
		}
		buff[bl++] = ch;
	}
	buff[bl] = 0;
	return 0;
}

/*=======================================================
函數:analysefile()
功能:對文件中的數據進行分詞并保存的結果文件中去。
=========================================================*/
void analysefile(){
	int iseof = 0;						//判斷是否文件末尾
	iseof = fillbuff();					//填充緩沖區
	btp = bp = 0;
	bl = strlen(buff);
	result[0] = 0;
	while(1){
		if(!cut()){//如果切詞失敗,則有可能是緩沖區末尾或者不能識別單詞
			while(bp<bl){
				if(buff[bp]<0)//是漢字
					bp ++;
				bp++;
				//跳過一個(漢)字進行再進行匹配,成功則跳出
				if(cut()==1)
					break;
			}
			if(bp >= bl){//如果到達緩沖區末尾
				//輸出結果
				fprintf(fout,"%s",result);
				if(iseof){//如果已經到達文件末尾
					//輸出剩余的未能識別的字串
					fprintf(fout,"%s",&buff[btp]);
					return;
				}
				result[0] = 0;
				bp = btp;				//重新設置回bp
				iseof = fillbuff();		//填充緩沖區
			}
		}
	}
	return;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
高清不卡在线观看av| 国内精品伊人久久久久av影院| 日韩亚洲欧美成人一区| 欧美体内she精视频| 91一区二区在线| 色综合色综合色综合色综合色综合 | 91网页版在线| 91亚洲精品一区二区乱码| 91丨九色porny丨蝌蚪| 91精品国产综合久久小美女| 成人免费视频免费观看| 国产精品综合一区二区三区| 国产精品一区二区你懂的| 国产福利精品导航| 91在线丨porny丨国产| 99久久99久久精品免费看蜜桃 | 国产午夜精品理论片a级大结局| 亚洲精品一区二区三区香蕉| 欧美韩国一区二区| 亚洲欧美一区二区三区久本道91 | 亚洲日本在线观看| 三级精品在线观看| 精品系列免费在线观看| 丰满亚洲少妇av| 欧洲色大大久久| 久久综合网色—综合色88| 日韩伦理电影网| 蜜臀av一区二区| 99精品在线观看视频| 欧美一级在线免费| 日本一区二区三区国色天香 | 91精品国产91热久久久做人人| 欧美tk丨vk视频| 中文字幕免费一区| 亚洲第一会所有码转帖| 国产精品一级二级三级| 欧美三级日本三级少妇99| 国产日韩欧美精品电影三级在线| 亚洲免费伊人电影| 极品美女销魂一区二区三区免费 | 日韩欧美一级片| 国产精品福利av| 美女视频网站黄色亚洲| 色综合久久久久综合体| 久久久久久影视| 免费不卡在线观看| 不卡的av电影在线观看| 日韩一区二区影院| 亚洲精品久久久久久国产精华液| 精品一区二区三区的国产在线播放| 一本色道久久综合精品竹菊| 久久久不卡网国产精品二区| 水蜜桃久久夜色精品一区的特点| 91丨porny丨中文| 国产婷婷色一区二区三区| 日韩成人一级片| 欧美日韩一区中文字幕| 国产精品久久久久久久久免费丝袜| 日韩和欧美一区二区三区| 91欧美一区二区| 亚洲国产精品99久久久久久久久| 日韩高清不卡一区二区三区| 色成年激情久久综合| 国产女同性恋一区二区| 麻豆成人免费电影| 宅男噜噜噜66一区二区66| 亚洲综合视频网| 一本久久精品一区二区| 亚洲欧洲三级电影| proumb性欧美在线观看| 久久精品视频一区二区三区| 久久不见久久见免费视频7| 91精品国产一区二区三区蜜臀 | 精品区一区二区| 日本伊人精品一区二区三区观看方式| 91成人免费电影| 亚洲自拍偷拍欧美| 精品视频在线免费看| 一区二区三区蜜桃| 欧美日韩中文国产| 亚洲国产日日夜夜| 欧美色图天堂网| 偷拍日韩校园综合在线| 欧美一区二区三区视频| 精品一区二区免费在线观看| 久久一夜天堂av一区二区三区| 国产一区二区三区精品欧美日韩一区二区三区| 日韩精品在线一区二区| 免费高清成人在线| 国产日本一区二区| 97超碰欧美中文字幕| 亚洲成人自拍一区| 日韩你懂的电影在线观看| 国产毛片精品视频| 蜜臀av亚洲一区中文字幕| 久久网站热最新地址| 成人综合婷婷国产精品久久免费| 国产精品久久久久9999吃药| 欧美午夜片在线观看| 麻豆91精品91久久久的内涵| 国产偷国产偷亚洲高清人白洁| 99视频有精品| 婷婷综合在线观看| 久久综合色综合88| 91丝袜美女网| 久88久久88久久久| 一区二区三区在线观看网站| 欧美一区二区三区系列电影| 成人午夜精品在线| 天天射综合影视| 国产精品网站导航| 制服丝袜亚洲色图| k8久久久一区二区三区| 麻豆91在线播放免费| 综合亚洲深深色噜噜狠狠网站| 欧美三级视频在线播放| 成人免费av在线| 美国av一区二区| 欧美激情一区二区三区蜜桃视频| 欧美日韩一区二区在线观看 | 亚洲国产成人一区二区三区| 欧美久久久影院| av一二三不卡影片| 韩国视频一区二区| 香蕉久久夜色精品国产使用方法| 欧美激情一区三区| 欧美成人在线直播| 欧美美女bb生活片| 99久久精品免费| 国产精品18久久久久久久久| 全国精品久久少妇| 亚洲一区欧美一区| 亚洲黄色免费电影| 国产欧美综合色| 国产视频一区在线观看| 日韩精品一区二区在线观看| 欧美日韩久久不卡| 一本久道久久综合中文字幕| 成人中文字幕合集| 国产精品99久久久久久有的能看 | 欧美激情一二三区| 久久亚洲二区三区| 日韩免费看网站| 7777精品伊人久久久大香线蕉的| 色噜噜夜夜夜综合网| 粉嫩aⅴ一区二区三区四区五区| 精品一区二区三区的国产在线播放| 日韩黄色免费电影| 免费成人深夜小野草| 首页国产欧美日韩丝袜| 亚洲一二三级电影| 亚洲精品国产精华液| 亚洲综合网站在线观看| 亚洲国产精品久久久久秋霞影院 | 国产精品无遮挡| 久久久久久久久久电影| 国产女主播一区| 中文一区在线播放| 综合av第一页| 亚洲情趣在线观看| 亚洲成人第一页| 日本三级亚洲精品| 日本欧美大码aⅴ在线播放| 日本不卡123| 国产精品综合网| 99精品视频免费在线观看| 91影院在线观看| 欧美色涩在线第一页| 91精品国产欧美一区二区成人| 欧美一级午夜免费电影| 国产日韩精品一区二区浪潮av| 日本一区二区三区在线不卡| 亚洲精品日韩一| 色诱亚洲精品久久久久久| 国产一区二区三区久久久| 免费看欧美女人艹b| 麻豆一区二区三区| 激情小说亚洲一区| eeuss鲁片一区二区三区在线看| 日韩国产欧美在线视频| 亚洲va国产va欧美va观看| 免费在线观看视频一区| 日韩高清在线不卡| 国产综合久久久久影院| 91尤物视频在线观看| 欧美精品99久久久**| 精品国精品国产| 夜夜嗨av一区二区三区| 精品久久五月天| 欧美二区乱c少妇| 亚洲成人综合在线| 国产精品青草久久| 亚洲一区二区三区三| 国产精一区二区三区| 91九色02白丝porn| 日本一区二区视频在线观看| 日韩精品久久久久久| 99麻豆久久久国产精品免费优播| 欧美一区二区视频在线观看2020 | 2022国产精品视频|