15.3.1
来源:互联网 发布:oracle恢复数据方式 编辑:程序博客网 时间:2024/06/06 04:18
#include <iostream>#include<fstream>#include<cstdlib>#include<string>using namespace std;class Word{public: void set(string e,string c,string w); int compare(string k); string getchinese(); string getword_class();private: string english; string chinese; string word_class;};void Word::set(string e,string c,string w){ english=e; chinese=c; word_class=w;}string Word::getchinese(){ return chinese;}string Word::getword_class(){ return word_class;}int Word::compare(string k){ return english.compare(k);}class Dictionary{public: Dictionary(); int check(int ,int ,string ); void checkword(string);private: Word words[8000]; int wordsnum;};Dictionary::Dictionary(){ wordsnum=0; string e,c,w; ifstream infile("dictioary.txt",ios::in); if(!infile) { cerr<<"open error!"<<endl; exit(1); } while(!infile.eof()) { infile>>e>>c>>w; words[wordsnum].set(e,c,w); wordsnum++; } infile.close();}int Dictionary::check(int low,int high,string key){ int mid; while(low<=high) { mid=(low+high)/2; if(words[mid].compare(key)==0) return mid; if(words[mid].compare(key)>0) { high=mid-1; } else low=mid+1; } return -1;}void Dictionary::checkword(string key){ int low=0,high=wordsnum-1; int s=check(low,high,key); if(s>0) { cout<<key<<"-->"<<words[s].getchinese()<<'\t'<<words[s].getword_class()<<endl; } else cout<<"error!!!!"<<endl;}int main(){ Dictionary dic; string key; do { cout<<"请输入待查询的关键词(英文),0000结束:"<<endl; cin>>key; if (key!="0000") { dic.checkword(key); } } while(key!="0000"); cout<<"欢迎再次使用!"<<endl<<endl; return 0;}
0 0
- 15.3.1
- 15.3.1 读取值
- 15.3.1 FileReader
- 算法导论 练习题 15.3-1
- 15.3.1 InputStream和Reader
- 15.3
- 15.3Sum
- 15.3Sum
- 15.3.3
- 15.3sum
- 15.3Sum
- 15.3Sum
- 15.3Sum
- 15.3Sum
- 15.3 Sum
- 15.3Sum
- Thinking in C++读书笔记--15.3.1非内联函数的实现
- WARN React-native@0.35.0 requires a peer of react@~15.3.1 but none was installed.
- C/C++ 类型转换
- Linux下的计算器(bc、expr、dc、echo、awk)知多少?
- Linux下使用doxygen自动生成注释和文档
- 在Linux中samba 服务器的配置
- 文件操作
- 15.3.1
- 数据库连接类故障
- Hadoop 提示 “Name node is in safe mode”如何解除
- C语言的谜题
- [c.y.j]练习定时器时钟
- Sap Netweaver Studio的下载地址(分享)
- 门禁系统
- How to Think Like a Computer Scientist
- Linux操作系统的内存使用方法详细解析