开发一个电子词典(下载词库点击打开链接)

#include

#include

#include

//定义词条类

typedef struct

{

char english[20];

char chinese[30];

char word_class[10];

} Word;

Word words[8000]; //将词典数组设置成全局的结构体数组

int wordsNum=0; //词典中的词条数目

/*从文件中将词读到字典中*/

void readDictionary()

{

FILE *fp;

//将文件中的数据读入到对象数组中

fp = fopen("dictionary.txt","r"); //以输入的方式打开文件

if(fp==NULL) //测试是否成功打开

{

printf("dictionary open error!\n");

exit(1);

}

while (!feof(fp))

{

fscanf(fp, "%s%s%s", words[wordsNum].english, words[wordsNum].chinese,words[wordsNum].word_class);

++wordsNum;

}

fclose(fp);

}

int BinSearch(int low, int high, char *key)

{

int mid;

while(low<=high)

{

mid=(low + high) / 2;

if(strcmp(words[mid].english, key)==0)

{

return mid; //查找成功返回

}

if(strcmp(words[mid].english, key)>0)

high=mid-1; //继续在w[low..mid-1]中查找

else

low=mid+1; //继续在w[mid+1..high]中查找

}

return -1; //当low>high时表示查找区间为空,查找失败

}

void searchWord(char *key)

{

int low=0,high=wordsNum-1; //置当前查找区间上、下界的初值

int index=BinSearch(low, high, key);

if(index>=0)

printf("%s ---> %s \t %s", key, words[index].word_class, words[index].chinese);

else

printf("查无此词");

printf("\n\n");

}

int main( )

{

readDictionary();

char key[20];

do

{

printf("请输入待查询的关键词(英文),0000结束:\n");

scanf("%s", key);

if (strcmp(key,"0000"))

{

searchWord(key);

}

else

{

break;

}

}

while(1);

printf("欢迎再次使用!\n\n");

return 0;

}

c语言程序电子词典,C语言及程序设计进阶例程-14 开发一个电子词典相关推荐

  1. c语言实验分支程序设计二,C语言程序实验报告分支结构的程序设计(0页).doc

    C语言程序实验报告分支结构的程序设计(0页) 数学与软件科学学院 实验报告 学期:11至12___ 第_1 学期 2011年10 月 17 日 课程名称:程序设计基础教程-C语言 专业:2010级5_ ...

  2. 8255a初始化c语言程序,8255A的c语言程序.doc

    8255A的c语言程序 8255A的c语言程序 [实例24]用8243扩展I/O端口 #include sbit ContrBit0=P1^0; sbit ContrBit1=P1^1; sbit C ...

  3. 单片机 中断秒表 c语言程序,51单片机c语言的秒表设计.doc

    51单片机c语言的秒表设计.doc 课程设计报告 基于AT89C51单片机的秒表设计 院 系 电子信息工程学院 专 业 电子信息工程 1 姓 名 摘 要 本设计是设计一个单片机控制的多功能秒表系统. ...

  4. 怎么用centos7运行c语言程序_写C语言程序,如何提升程序运行效率?我的一点经验分享给你们!...

    在编写C语言程序后,经常需要对源码进行优化,以提高程序的运行效率,下面简述几个常用的优化技巧以供大家参考: 1.C于代码在程序中的优化 现在的C编译器会自动对代码进行优化,但这些优化是对执行速度和代码 ...

  5. 单纯形 c语言 程序,单纯形法完全c语言程序

    单纯形法完全c语言程序 更新时间:2017/2/8 13:37:00  浏览量:566  手机版 单纯形法完全c语言程序,能运行 #include "math.h" #includ ...

  6. 程序设计基础(c语言),程序设计基础(C语言)

    <程序设计基础(C语言)>由会员分享,可在线阅读,更多相关<程序设计基础(C语言)(26页珍藏版)>请在人人文库网上搜索. 1.程序设计基础(C语言),东北大学高级语言程序设计 ...

  7. c语言程序链接过程,C语言简明教程(二):C程序编译链接过程和实例对照详解...

    不像高级编程语言,在C语言开发中,了解其编译链接过程显得相对重要,因为C语言是较为底层的语言,很多时候我们调试C程序或者解决其它问题都可能会涉及到C编译链接的相关知识,例如编译动态库或者静态库.下面我 ...

  8. c语言程序改错例题,C语言程序改错习题

    C语言程序改错习题 行动是通向成功的唯一途径.以下是小编为大家搜索整理的C语言程序改错习题,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网! 在考生文件夹下,给定程序MODI.C的功 ...

  9. c语言程序40例,C语言程序讲解40例.pdf

    实用标准文案 C 语言程序讲解 40 例 [程序 1] 题目:有 1.2.3.4 个数字, 能组成多少个互不相同且无重复数字的三位数?都是多少? 1. 程序分析:可填在百位.十位.个位的数字都是 1. ...

  10. 怎样检查c语言程序的问题,C语言陷阱与技巧第24节,做代码选择,不一定都要使用 if 判断的...

    在C语言程序开发中,实现需求的解决方案往往不止一个.解决一个问题,程序员一般都能够设计出多个解决方案,并写出相应的C语言代码. 可能有读者会觉得,解决问题的话,写出一种方法就可以了,给出多个方法没有意 ...

最新文章

  1. 真 · 圆桌!WAIC论坛上演自动驾驶专家激辩,直面技术路径之争
  2. 中国python之父是谁-Python之父:谈Python
  3. 行业网站设计策划书_怎么把金融行业网站设计排版做到符合用户体验?
  4. java第三章:流程控制语句
  5. 【项目合作】最高50万元!道路缝隙检测、目标跟踪优化、机器人平台开发
  6. 今天没事做了个MBTI职业倾向测试
  7. ubuntu 串口 树莓派_linux系统(ubuntu)烧录安装树莓派及远程连接树莓派
  8. python 调用 c 模块
  9. GDB 反向调试(Reverse Debugging)
  10. TFS无法连接:TF31002
  11. win10默认壁纸_win10主题软件哪个好用 win10主题软件排行
  12. RecyclerView实现横向滚动
  13. java设计一个bank类实现银行_关于JAVA设计一个银行账户管理类
  14. 有趣的算法:捞鱼问题
  15. 基于tesseract的文字识别
  16. MFC添加afx_msg点击事件
  17. 联盟链系统开发 联盟链开发多钱
  18. 实现动态表单功能设计思路
  19. ':app:clean'. Unable to delete directory:app\build\intermediates
  20. 将RSA加密应用在ARM-Linux平台

热门文章

  1. oracle sql列转行_oracle 行转列 列转行 转载
  2. 在centos系统上安装python
  3. 亲测有效,使用postman进行并发测试
  4. 用户体验与可用性测试_读书笔记
  5. 海信电视老出现android是什么意思,海信电视屏幕上显示“智能电视系统启动中,请稍后”是什么意思?怎样处理?- 一起装修网...
  6. SAP计划策略40测试
  7. c 语言所有符号,c语言 符号
  8. 京东商品分类API接口-(cat_get-获得jd商品分类API接口),京东分类API接口
  9. Python面向对象编程:数据封装、继承和多态
  10. 产品读书《自卑与超越》