c语言课程设计-电子英汉词典(含源码)24373.pdf
《c语言课程设计-电子英汉词典(含源码)24373.pdf》由会员分享,可在线阅读,更多相关《c语言课程设计-电子英汉词典(含源码)24373.pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.C 语言课程设计 软件学院 指导教师:*:一、实验题目及要求 题目:电子英汉词典 设计要求:1.用图形用户界面实现 2.能够编辑词典库中的信息 3.能够实现英译汉,汉译英。要考虑一词多义 二、实验过程 主要思想:1 建立词典库相关文件的处理 2 设计词典图形用户界面 3 查找单词及词典的重复使用实现一词多义 主要过程 1.词典库的建立:文件的建立,写入和调出参考教师给的 FILE.C 文件 FILE.C 大致容 FILE*fp/*建立文件指针*/fp=fopen(d:list.t*t,wb+);/*在指定路径建立文本文件*/for(i=0;iSIZE;i+)/*将构造体中的容 if(fwri
2、te(&stui,sizeof(struct student),1,fp)!=1)写进指定文件中并进 printf(file write error!);行判断是否写入*/e*it(0);.fread(&stu_temp,sizeof(struct student),1,fp);/*将文件中的指定容调出*/单词库存储在指定路径的指定文件中方便后文的查询和调出 单词库的建立利用构造体可以包含一词多义,并将汉译英和英译汉的词典库分 开以便实现英汉互译在中文 dos 环境下运行 图例:未在中文 dos 环境下运行 2.设计词典图形用户界面 参考文件 Graph.c 进展图形驱动 void init(
3、)int gdriver,gmode,i,j;gdriver=DETECT;registerbgidriver(EGAVGA_driver);initgraph(&gdriver,&gmode,);图例未设置鼠标前 上网查找相关资料调用鼠标 鼠标绘制函数 设置鼠标指针位置函数 设置函数得到鼠标左右键点击的不同状态 设置鼠标后运行结果全屏无法截图 在图形界面下设计用户界面并使用该鼠标设置相关区域的鼠标键点击后 得到不同的结果,进入英译汉或汉译英界面 3.查找单词及词典的重复使用考虑一词多义 利用文件指针和函数 fseek,fread 对构造体的单词名称查找和该相关 释义的调用同时考虑英汉互译 设
4、置查找不到单词的页面和利用 while 语句使实现词典是否需要重复使用 功能 图例:三、实验结果及心得 根据题目描述根本到达题目要求。在实验过程中对照教师给予的帮助程序和相关软件不断构思得到大致的框架,不断的调试不断的查询函数用法的同时加深对 c 语言的认识,也许只是简单的一句话也许只是简单的一个功能也是需要一个一个经过深思熟虑的代码敲打出来。此次试验中了解图形用户界面,相关文件的存储和调用,鼠标的调用及使用等等平常没有接触到的 c 语言的知识。深深感受到 c 语言博大精深,将为以后的软件方面知识的学习打下深刻的根底。四、代码dictionary#include#include .#inclu
5、de#include#include#include#include#include#include#define SIZE 2 /*设置词典的词汇量*/#define NO_PRESSED 0 /*为读取鼠标的各个状态*/#define LEFT_PRESSED 1#define RIGHT_PRESSED 2 void DrawMouse(float*,float y);int setMousePos(int*,int y);int mouseStatus(int*,int*y);void init();void bo*(int start*,int starty,int high,int
6、 width);struct word char name10;/*存储英译中词典单词名*/char e*p320;/*存储英译中词典单词释义*/char namm10;/*存储中译英词典单词名*/char e*320;/*存储英译中词典单词释义*/;/*创立存放单词及其释义的构造体*/char buf20*20*4;/*设置缓存区*/main()char*f=Chinese-English Translation(中 译 英),English-Chinese Translation(英译中);int key,y,*;char u;int t=0,r;int o1SIZE;int o2SIZE
7、;/*o1,o2 数组用来储存单词的释义数目*/char seek10;/*存储查询功能时用户输入的单词*/int last_*,last_y;int*1,y1;int*0,y0;int m=0;struct word stuSIZE,stu_eg;/*为读取文件中容设定的相关构造 体 变 量*/FILE*fp;/*定义文件指针*/int i,j;fp=fopen(c:list.t*t,wb+);if(fp=NULL).printf(cannot open this filen);e*it(0);/*创立或翻开特定路径的文件*/for(i=0;iSIZE;i+)puts(English wor
8、d:);scanf(%s,&stui.name);/*添加英译中词典中单词名*/u=y;/*字符变量 u 存储用户输入的键盘值 查询用户是否需要添加释义*/j=0;/*变量 j 的数值能控制每个单词释义在 三个之*/while(u=y&j=2)o1i=j;/*int 类型数组 o1 记载每个单词拥有的释义数*/printf(Chinese e*planation%d:,j+1);y=wherey();scanf(%s,stui.e*pj);gette*t(1,1,60,14,buf);if(j2)printf(nanother e*plaination“(nor y)n);getchar();
9、scanf(%c,&u);clrscr();putte*t(1,1,60,14,buf);goto*y(1,y+2);j+;clrscr();/*添加英译中词典中单词*/*利用循环语句添加单词释义实现一次 多义功能*/for(i=0;iSIZE;i+)puts(中文单词:);scanf(%s,&stui.namm);u=y;j=0;while(u=y&j=2)o2i=j;.printf(英文释义%d:,j+1);y=wherey();scanf(%s,stui.e*j);gette*t(1,1,60,14,buf);if(j2)printf(n 增加释义“(nor y)n);getchar()
10、;scanf(%c,&u);clrscr();putte*t(1,1,60,14,buf);goto*y(1,y+2);j+;/*相关解释同上文英译汉词典中注释*/*添加中译英词典中单词*/clrscr();for(i=0;i170&*1210&y1170&*1260&y1290)m=2;break;if(*1470|y1290);/*设定鼠标在界面一定区域进展相关点 击后实现的功能*/restorecrtmode();/*设计词典的界面*/while(u=y)/*利用 u=y使词典能重复使用*/while(1)te*tbackground(3);te*tcolor(15);if(m=1)t=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 电子 英汉词典 源码 24373
限制150内