做一个简单的电子词典。在文件dictionary.txt中,保存的是英汉对照的一个词典,词汇量近8000个,英文、中文释义与词性间用’\t’隔开。建一个表示词条的类Word,Word类的一个对象可以描述一个词,将文件中的内容读到对象数组中等待查询。由用户输入英文词,显示词性和中文释义。允许连续查词,自行设计退出查词状态的方式。原网页
#include<iostream>
#include<fstream>
#include<sstream>
using namespace std;
int main()
{
ifstream fin("dictionary.txt");
string eng[10000],chs[10000],wclass[10000];
int i=0;
while(!fin.eof())
{
fin>>eng[i]>>chs[i]>>wclass[i];
i++;
}
cout<<"i="<<i<<endl;
fin.close();
cout<<"输入英文单词:";
string word;
int low=0,high=i,mid;
cin>>word;
int judge=1;
while(low<=high)
{
mid=(low+high)/2;
if(eng[mid]==word){cout<<wclass[mid]<<"\t"<<chs[mid]<<endl;judge=0;tbreak;}
if(eng[mid]<word){low=mid+1;}
else high=mid-1;
}
if(judge) cout<<"单词不在范围内。。"<<endl;
return 0;
}