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

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

?? dictionary.cpp

?? 這是一個實現(xiàn)英漢字典的基本操作的代碼。功能有:查詢
?? CPP
字號:
#include<fstream.h>
#include<string.h>
#include<iomanip.h>
#include"Dictionary.h"

Dictionary::Dictionary()
{
	danci=NULL;
	num=0;
	return;
}

Dictionary::~Dictionary()
{
	if(danci!=NULL)
	   delete danci;
	return;
}

int Dictionary::LineCount(ifstream in)   //統(tǒng)計文件的行數(shù)
{
	int counter=0;
	char buf[225];
	while(!in.eof())
	{
		in.getline(buf,sizeof(buf));       //把文件中一行的數(shù)據(jù)放入數(shù)組buf中
		counter++;
	}
	return counter;
}

BOOLEAN Dictionary::init()       //初始化數(shù)據(jù)成員
{
	ifstream input_file;
	int loop;
	input_file.open("dic_file.txt");
	if(!input_file)
	{
		cout<<"該文件打開不成功!"<<endl;
		return FALSE;
	}
	num=LineCount(input_file);
    danci=new word[num];          
    input_file.seekg(0,ios::beg);     //文件的讀指針重新指向文件開始
    for(loop=0;loop<num;loop++)        
		input_file>>(danci+loop)->English>>(danci+loop)->cixing>>(danci+loop)->Chinese;
	input_file.close();
	return TURE;
}

int Dictionary::Index(char* s,char* t)      //若t為s的子串,則返回t的第一個字符在s中的位置;
{                                           //否則,返回0
	int pos,length_s,length_t,i,j;
	length_s=strlen(s);
	length_t=strlen(t);
	if(length_s>=length_t)
	{
		i=0;
	    j=0;
		while(i<=length_s-1&&j<=length_t-1)
		{
			if(s[i]==t[j])           //繼續(xù)比較后繼字符
			{
				i++;
				j++;
			}
			else                     //指針后退重新開始匹配
			{
				i=i-j+1;
				j=0;
			}
		}
		if(j>=length_t)
			pos=i-length_t+1;
		if(j<length_t)
			pos=0;
	}
	else
		pos=0;
	return pos;
}

void Dictionary::SelectEnglish()       //根據(jù)英文單詞查詢其詞性和中文解釋
{
	char* string;
	int loop,temp=0;
	string=new char[MAXSTR];
	cout<<"請輸入要查找的單詞:"<<endl;
	cin>>string;
	for(loop=0;loop<num;loop++)            //順序查找與輸入相同的單詞
	{
		if(strcmp(string,(danci+loop)->English)==0)
		{
			cout<<danci+loop;                  //調用了重載的插入符   
			break;
		}
		temp++;
	}
	if(temp==num) 
			cout<<"該單詞在詞典中不存在."<<endl;
	delete string;
	return;
}

void Dictionary::SelectChinese()       //根據(jù)中文查詢其英文和詞性
{
	char* string;
	int loop,i,j,temp=0;
	char ch;
	string=new char[MAXSTR];
	cout<<"請輸入中文:"<<endl;
	cin>>string;   
	for(loop=0;loop<num;loop++)        //順序查找包含了輸入的中文
	{
		i=Index((danci+loop)->Chinese,string);    //調用函數(shù)Index()
		if(i)
		{
			j=i+strlen(string)-1;                //j是string的最后一個字符在某單詞中的位置
			ch=(danci+loop)->Chinese[j];
			if((i==1&&ch==';')||(i==1&&ch=='\0')||(i!=1&&(danci+loop)->Chinese[i-2]==';'&&ch==';')||(i!=1&&(danci+loop)->Chinese[i-2]==';'&&ch=='\0'))
				temp++;
		}
	}
	if(temp==0)
		cout<<"詞典里沒有對("<<string<<")的英文解釋"<<endl;
	else
	{
		cout<<setw(6)<<"英文解釋"<<setw(15)<<"詞性"<<endl;
		for(loop=0;loop<num;loop++)
		{
			i=Index((danci+loop)->Chinese,string);
		    if(i)
			{
				j=i+strlen(string)-1;                //j是string的最后一個字符在某單詞中的位置
			    ch=(danci+loop)->Chinese[j];
			    if((i==1&&ch==';')||(i==1&&ch=='\0')||(i!=1&&(danci+loop)->Chinese[i-2]==';'&&ch==';')||(i!=1&&(danci+loop)->Chinese[i-2]==';'&&ch=='\0'))
					cout<<setw(6)<<(danci+loop)->English<<setw(15)<<(danci+loop)->cixing<<endl;
			}
		}
	}
	delete string;
	return;
}
		
int Dictionary::Add()             //添加一條記錄,若成功添加則返回1,否則返回0
{
	word *str,*m;
	int loop,temp=0;
	str=new word;
	if(num<MAXSIZE)
	{
        cout<<"請輸入新單詞:"<<endl;
	    cin>>str->English;
		for(loop=0;loop<num;loop++)     //查看是否有與輸入相同的單詞
		{
			 if(strcmp(str->English,(danci+loop)->English)==0)
			    break;
			 temp++;
		}
        if(temp==num)                //若不存在,則添加在最后
		{
            cin>>str;          //調用了重載的提取符
			m=danci+num;
			m=new word;
		    strcpy((danci+num)->English,str->English);
	        strcpy((danci+num)->cixing,str->cixing);
		    strcpy((danci+num)->Chinese,str->Chinese);
		    num++;
		    cout<<"添加成功!"<<endl;
			delete str;
			return 1;
		}
		else
			cout<<"該單詞在詞典中已存在。"<<endl;
	}
	else 
		cout<<"詞典已滿,添加失敗。"<<endl;
	delete str;
    return 0;
}

int Dictionary::Delete()              //刪除記錄,若成功刪除則返回1,否則返回0
{
	char* string;
	int loop,temp=0,i;
	string=new char[MAXSTR];
	if(num>0)
	{
		cout<<"請輸入要刪除的單詞:"<<endl;
	    cin>>string;
	    for(loop=0;loop<num;loop++)         //順序查找與輸入相同的單詞
		{
	        if(strcmp(string,(danci+loop)->English)==0)
			    break;
			 temp++;
		}
	    if(temp<num)               //若存在,則將其刪除
		{
		    for(i=temp;i<num-1;i++)
			{
			    strcpy((danci+i)->English,(danci+i+1)->English);
		        strcpy((danci+i)->cixing,(danci+i+1)->cixing);
		        strcpy((danci+i)->Chinese,(danci+i+1)->Chinese);
			}
		    num--;              //記錄數(shù)減1
			cout<<"刪除成功!"<<endl;
			delete string;
			return 1;
		}
	    else
			cout<<"該單詞在詞典中不存在!"<<endl;
	}
	else 
		cout<<"詞典已空。無法進行刪除操作!"<<endl;
	delete string;
	return 0;
}

int Dictionary::Update()          //修改記錄,若成功修改則返回1,否則返回0
{
    word* str;
	int loop,temp=0,j;
	str=new word;
	cout<<"請輸入要修改的單詞:"<<endl;	  
	cin>>str->English;
	for(loop=0;loop<num;loop++)          //順序查找與輸入相同的單詞
	{
		if(strcmp((danci+loop)->English,str->English)==0)
			break;
		temp++;
	}
	if(temp<num)            //若存在,則用新的詞性和中文取代舊的
	{
		j=temp;
		cout<<"請輸入新的詞性:"<<endl;
		cin>>str->cixing;
		cout<<"請輸入新的中文解釋:"<<endl;
		cin>>str->Chinese;
		strcpy((danci+j)->cixing,str->cixing);
		strcpy((danci+j)->Chinese,str->Chinese);
		delete str;
		return 1;
	}
	else
		cout<<"該單詞在詞典中不存在!"<<endl;
	delete str;
	return 0;
}

void Dictionary::ImageSelect()           //查詢以某一前綴開頭的單詞的詞性和中文解釋   
{
	char* string;
	int loop,temp=0,i;
	string=new char[MAXSTR];
    cout<<"請輸入單詞的前綴:"<<endl;
	cin>>string;
	
	for(loop=0;loop<num;loop++)
	{
        i=Index((danci+loop)->English,string);
		if(i==1)
			temp++;
	}
	if(temp==0)
		cout<<"詞典中不存在以"<<string<<"為前綴的單詞."<<endl;
	else
	{
		cout<<"以"<<string<<"為前綴的單詞顯示如下:"<<endl;
	    cout<<setw(6)<<"英文"<<setw(15)<<"詞性"<<setw(15)<<"中文"<<endl;
		for(loop=0;loop<num;loop++)
		{
			i=Index((danci+loop)->English,string);           //調用函數(shù)Index()
		    if(i==1)
				cout<<setw(10)<<(danci+loop)->English<<setw(10)<<(danci+loop)->cixing<<setw(20)<<(danci+loop)->Chinese<<endl;
		}
	}
	delete string;
	return;
}

void Dictionary::Show()       //顯示所有記錄
{
	int loop;
	cout<<"詞典所有記錄顯示如下:"<<endl;
	cout<<setw(6)<<"英文"<<'\t'<<setw(15)<<"詞性"<<'\t'<<setw(15)<<"中文"<<'\t'<<endl;
	for(loop=0;loop<num;loop++)        //順序輸出所有單詞
	    cout<<setw(10)<<(danci+loop)->English<<'\t'<<setw(10)<<(danci+loop)->cixing<<'\t'<<setw(20)<<(danci+loop)->Chinese<<'\t'<<endl;
    return;
}

ostream& operator << (ostream& stream,word* w)          //重載插入符
{
	stream<<"該單詞的詞性為:"<<endl;
	stream<<w->cixing<<endl;
	stream<<"該單詞的中文解釋為:"<<endl;
	stream<<w->Chinese<<endl;
	return stream;
}

istream& operator >> (istream& stream,word* w)         //重載提取符
{
    cout<<"請輸入該單詞的詞性:"<<endl;
	stream>>w->cixing;
	cout<<"請輸入該單詞的中文解釋:"<<endl;
	stream>>w->Chinese;
	return stream;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲电影在线免费观看| 国产成人精品三级| 国产91精品一区二区麻豆网站| 9i看片成人免费高清| 日韩欧美国产高清| 亚洲综合免费观看高清在线观看| 国产乱码一区二区三区| 欧美日韩综合色| 日韩美女视频一区二区 | 欧美日韩免费视频| 欧美国产日韩亚洲一区| 免费看欧美美女黄的网站| 91啪九色porn原创视频在线观看| 26uuu久久天堂性欧美| 日本色综合中文字幕| 欧美午夜视频网站| 亚洲精品福利视频网站| 国产成人精品三级| 久久久久国产精品人| 午夜成人免费电影| 欧美色视频在线观看| 亚洲免费看黄网站| 99久久国产综合精品色伊| 国产日韩欧美精品在线| 国产成人综合精品三级| 日韩一区国产二区欧美三区| 午夜视频在线观看一区二区| 欧美中文字幕久久| 亚洲自拍偷拍九九九| 在线一区二区三区四区| 一区二区三区高清在线| 色婷婷久久一区二区三区麻豆| 欧美韩国日本不卡| 99久久精品情趣| 亚洲天天做日日做天天谢日日欢| 91蜜桃在线观看| 亚洲女女做受ⅹxx高潮| 色综合久久综合中文综合网| 一区二区三区四区在线| 在线观看视频一区二区| 亚欧色一区w666天堂| 777xxx欧美| 久久99久久精品欧美| 日本一区二区三级电影在线观看| 风间由美中文字幕在线看视频国产欧美 | 色综合久久综合网欧美综合网| 综合久久久久久| 欧美日韩一卡二卡| 日韩不卡手机在线v区| 精品999在线播放| 成人一区二区三区中文字幕| 亚洲日本丝袜连裤袜办公室| 在线免费精品视频| 久久av老司机精品网站导航| 国产欧美日韩不卡免费| 色狠狠色噜噜噜综合网| 日韩中文字幕1| 国产午夜精品一区二区三区嫩草| 91色综合久久久久婷婷| 午夜婷婷国产麻豆精品| 久久尤物电影视频在线观看| 91在线观看一区二区| 视频一区欧美精品| 久久久精品蜜桃| 在线观看中文字幕不卡| 国产一区二区美女| 亚洲欧美日韩综合aⅴ视频| 日韩欧美www| 91亚洲精华国产精华精华液| 蜜芽一区二区三区| 国产精品国产三级国产普通话99| 精品视频1区2区| 懂色av一区二区夜夜嗨| 日韩福利视频导航| 中文字幕一区在线| 精品蜜桃在线看| 在线观看日韩精品| 国产白丝网站精品污在线入口| 亚洲丰满少妇videoshd| 亚洲国产成人自拍| 欧美一区二区福利视频| 色综合天天综合色综合av| 精品一区二区三区在线播放视频| 亚洲欧美综合另类在线卡通| 日韩免费看网站| 欧洲视频一区二区| 成人午夜在线免费| 精品一区二区三区香蕉蜜桃 | 91国偷自产一区二区三区观看 | 亚洲男人的天堂在线观看| 日韩欧美在线1卡| 欧美亚洲尤物久久| 91丝袜美腿高跟国产极品老师 | 国产精品毛片无遮挡高清| 日韩欧美另类在线| 91.com在线观看| 91在线播放网址| caoporn国产精品| 韩国精品一区二区| 美女尤物国产一区| 视频在线观看一区| 日韩精品乱码免费| 亚洲国产精品嫩草影院| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 一区二区免费看| 中文字幕一区二区三区av| 久久久久久久久蜜桃| 欧美mv日韩mv国产网站app| 欧美一区二区在线视频| 欧美三级一区二区| 欧美日韩一区高清| 欧美网站大全在线观看| 欧美熟乱第一页| 欧美性xxxxx极品少妇| 欧美日韩中字一区| 欧美日韩中文字幕精品| 欧美色精品天天在线观看视频| 精品少妇一区二区三区在线播放 | 欧美在线观看禁18| 91久久精品网| 欧美日韩免费一区二区三区| 欧美日韩精品一区二区| 欧美久久久一区| 日韩一区二区三区电影| 日韩你懂的电影在线观看| 久久综合给合久久狠狠狠97色69| 国产亚洲美州欧州综合国| 日本一区二区高清| 综合电影一区二区三区| 亚洲一二三区在线观看| 日韩一区精品视频| 九一久久久久久| 国产精品亚洲一区二区三区在线 | 日韩一区二区在线免费观看| 日韩美女天天操| 久久久久国产精品麻豆ai换脸| 中文字幕不卡在线播放| 国产精品 欧美精品| 一本大道av伊人久久综合| 欧美日韩国产在线观看| 精品剧情v国产在线观看在线| 中文字幕欧美日本乱码一线二线| 亚洲私人黄色宅男| 午夜精品久久久久久久99水蜜桃| 狠狠v欧美v日韩v亚洲ⅴ| 成人性生交大片免费看中文| 欧美性猛交一区二区三区精品| 日韩欧美亚洲国产另类| 中文字幕乱码日本亚洲一区二区| 一区二区三区.www| 久久国产成人午夜av影院| 91亚洲精华国产精华精华液| 欧美一区二区在线免费播放| 国产精品三级av在线播放| 视频在线在亚洲| 成人的网站免费观看| 欧美日韩一区在线观看| 国产日韩欧美亚洲| 日产精品久久久久久久性色| 成人夜色视频网站在线观看| 欧美久久免费观看| 亚洲图片激情小说| 国产在线视频精品一区| 欧美性xxxxx极品少妇| 欧美国产激情一区二区三区蜜月| 日韩国产欧美在线播放| 97久久久精品综合88久久| 久久综合狠狠综合久久综合88| 亚洲一区二区视频| 成人午夜碰碰视频| 日韩精品专区在线影院重磅| 亚洲一区二区在线免费看| 高清不卡一区二区在线| 精品国产一区二区国模嫣然| 一区二区三区加勒比av| 91在线观看视频| 国产日韩欧美制服另类| 麻豆成人免费电影| 欧美色男人天堂| 亚洲欧洲成人自拍| 国产成人在线视频网站| 精品日韩一区二区三区 | 亚洲欧美aⅴ...| 国产成人鲁色资源国产91色综| 日韩三级精品电影久久久| 亚洲资源在线观看| 91在线观看美女| 国产精品家庭影院| 成人黄色av网站在线| 欧美—级在线免费片| 国产一区二区三区免费播放| 欧美电影免费观看高清完整版在| 亚瑟在线精品视频| 欧美日韩在线播| 日韩有码一区二区三区| 69久久夜色精品国产69蝌蚪网| 99精品国产热久久91蜜凸| 国产精品人成在线观看免费| 成人黄色电影在线| 国产精品国产自产拍高清av王其 |