第14周项目4-电子词典

来源:互联网 发布:韩顺平 linux视频教程 编辑:程序博客网 时间:2024/05/19 02:18
/**Copyright (c) 2014,烟台大学计算机学院*All rights reserved.*文件名称:Annpion.cpp*作者:王耀鹏*完成日期:2014年12月1日*版本号:v1.0**问题描述:电子词典。*输入描述:文件输入词库,输入要查找的词。*程序输出:输出查找词的中文意思*/#include<iostream>#include<fstream>#include<cstdlib>#include<string>using namespace std;string word,e[10000],c[10000];int midsearch(int low,int high,string word);int main(){    int i=0;    ifstream infile("dictionary.txt",ios::in);    if(!infile)    {        cerr<<"open error!"<<endl;        exit(1);    }    while(infile>>e[i]>>c[i])    {        i++;    }    infile.close();    do    {        cout<<"请输入要查找的词(0000结束):";        cin>>word;        if(word=="0000")            break;        else        {            int low=0,high=i-1;            int bin=midsearch(low,high,word);            if(bin==-1)                cout<<"查无此词"<<endl<<endl;            else cout<<word<<"的中文意思是"<<c[bin]<<endl<<endl;        }    }    while(word!="0000");    return 0;}int midsearch(int low,int high,string word){    int mid;    while(low<=high)    {        mid=(low+high)/2;        if(e[mid]==word)            return mid;        if(e[mid]>word)            high=mid-1;        else low=mid+1;    }    return -1;}

运行结果:


0 0