第14周项目4-电子词典

编号及代码:

/*

*Copyright (c)2014,计算机与控制工程学院

*All rights reserved

*作者:范星月

*完成日期:2014年12月1日

*版本号:v1.0、

*

*问题描述:做一个简单的电子词典

*问题输入:输入单词

*问题输出:输出汉语意思

*/

#include<fstream>
#include <iostream>
#include<cstdlib>

using namespace std;
const int num=8000;
int main()
{
    string  e[num],c[num],key;
    int count=0;//读入数据
//以输入的方式(ios::in)打开文件
    ifstream infile("dictionary.txt",ios::in);//测试是否成功打开,打不开时(数据不存在)退出
    if(!infile)
    {
        cerr<<"open error!"<<endl;
        exit(1);
    }
    for (count=0; count <num; ++count )
    {
        infile>>e[count];
        if (infile!=" ")
            infile>>c[count];
    }
    infile.close();
    cout <<"请输入要查的词(0000结束):"<<endl;
    while(cin>>key&&key!="0000")
    {
        int high=num-1,low=0,mid;
        while (low<=high)
        {
            mid=(high+low)/2;
            if (e[mid]==key)
            {
                cout <<c[mid]<<endl;
                break;
            }
            else if(e[mid]>key)
                high=mid-1;
            else
                low=mid+1;

        }
    }

    return 0;
}


运行结果:

第14周项目4-电子词典_第1张图片

学习总结:二分法查找单词

学习心得:加油,加油

你可能感兴趣的:(第14周项目4-电子词典)