电子词典(第十五周上机任务)
2012-12-07 20:23
197 查看
/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作者:樊露露 * 完成日期:2012 年12月7日 * 版本号:v1.0 * * 输入描述:无 * 问题描述:电子词典 * 程序输出:电子词典 * 问题分析: * 算法设计:略 */ #include<iostream> #include<fstream> #include<string> using namespace std; int BinSearch(int high,int low,string k); int wordNum=0; string e[8000],c[8000]; int main(){ string key; ifstream infile("dictionary.txt",ios::in); if(!infile){ cout<<"open error!"<<endl; exit(1); } while(!infile.eof()){ infile>>e[wordNum]>>c[wordNum]; ++wordNum; } infile.close(); do{ cout<<"请输入要查的词(按0000结束):"; cin>>key; if(key=="0000") break; else{ int low=0,high=wordNum-1; int index=BinSearch(high,low,key); if(index==-1) cout<<"查无此词!"<<endl; else cout<<key<<"您要查的词是:"<<c[index]<<endl; } } while(1); cout<<"欢迎再次使用!"<<endl; return 0; } //二分查找 int BinSearch(int high,int low,string k){ int mid; while(low<=high){ mid=(low+high)/2; if(e[mid]==k){ return mid; } if(e[mid]>k) high=mid-1; else low=mid+1; } return -1; }
![](http://img.my.csdn.net/uploads/201212/07/1354883315_2558.jpg)
相关文章推荐
- 二维数组大折腾(第十五周上机任务)
- 第十五周上机任务----杨辉三角
- 第十五周上机任务项目1-折腾二维数组
- 第十五周上机任务1
- java上机 第十五周 任务一
- 第十五周上机任务-
- 第十五周上机任务-项目1
- 第十五周上机任务-项目4
- 带姓名的成绩单(第十五周上机任务)
- 第十五周上机任务(杨辉三角)
- 第十五周上机任务2
- 第十五周上机任务项目2-杨辉三角
- 第十五周上机任务3-1
- 第十五周上机任务项目1-建立专门的数组类处理有关数组的操作
- 第十五周上机任务项目2-建立专门的链表类处理有关动态链表的操作
- 多科成绩单(第十五周上机任务)
- 第十五周上机任务3-2
- 第十五周上机任务项目4—多科成绩单
- 第十五周上机任务项目1-2建立专门的数组类处理有关数组的操作
- 杨辉三角形(第十五周上机任务)(两种方法)