电子英汉词典设计1.docx

上传人:b****7 文档编号:9677305 上传时间:2023-02-05 格式:DOCX 页数:16 大小:107.18KB
下载 相关 举报
电子英汉词典设计1.docx_第1页
第1页 / 共16页
电子英汉词典设计1.docx_第2页
第2页 / 共16页
电子英汉词典设计1.docx_第3页
第3页 / 共16页
电子英汉词典设计1.docx_第4页
第4页 / 共16页
电子英汉词典设计1.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

电子英汉词典设计1.docx

《电子英汉词典设计1.docx》由会员分享,可在线阅读,更多相关《电子英汉词典设计1.docx(16页珍藏版)》请在冰豆网上搜索。

电子英汉词典设计1.docx

电子英汉词典设计1

一、课程设计的内容

电子英汉词典设计

一、问题描述:

英汉词典作为一个常用的学习工具,是我们经常要使用的。

该系统能完成一个简单的电子英汉词典的功能,如:

单词的查找、增词、删除、修改和维护等工作。

二、功能描述:

1、在计算机中建立有限规模的电子英汉词典〔文件〕,利用程序实现电子英汉词典的查找、增词、删除、修改和维护工作。

2、词典的内容为:

每行对应一个词条,每个词条由两个字符串组成,字符串用假如干空格符分开;前一个是单词字符串〔英文〕,后一个是释义字符串〔中文〕,使用分号作为多个释义的分隔符〔无空格〕。

3、对单词和释义字符串长度的限定分别为不少于20个与40个字符,词条数限定为不多于200条。

4、采用菜单工作方式。

在一个操作执行之后,程序询问是否继续执行该操作。

如输入Y或y,如此重复同一操作,不退回到菜单;如输入其它信息,如此回到菜单等待另一次选择。

仅当选择退出操作时,程序应询问是否将修改后的词典存盘,并根据用户选择存盘退出或不存盘退出。

5、要求整个设计以人为本,用户界面友好。

 

二、课程设计的要求与数据

1、进一步掌握和利用C语言进展程设计的能力;

2、进一步理解和运用结构化程序设计的思想和方法;

3、初步掌握开发一个小型实用系统的根本方法;

4、学会调试一个较长程序的根本方法;

5、学会利用流程图或N-S图表示算法;

6、掌握书写程序设计开发文档的能力。

三、课程设计应完成的工作

1、编写完成相应题目的程序;

2、编写课程设计报告,课程设计报告的内容应包括以下6个局部:

1)需求分析:

包括设计题目、设计要求以与系统功能需求分析;

2)总体设计:

包括系统总体设计框架和系统功能模块图;

3)详细设计:

包括主要功能模块的算法设计思路以与对应的工作流程图;

4)调试分析过程描述:

包括测试数据、测试输出结果,以与对程序调试过程中存在问题的思考〔列出主要问题的出错现象、出错原因、解决方法与效果等,适当的包含结果截图〕;

5)总结:

课程设计完成了哪些功能,有没有什么扩展功能?

还有哪些地方需要改

进?

课程设计过程中的学习体会与收获、对本次课程设计的认识以与自己的建等内容;

6)附录:

主要源程序代码,含必要的注释。

3、辩论:

在实验室建立程序运行的环境,并在指导教师的监视下,独立解

决问题、运行程序和回答教师提出的问题

四、课程设计进程安排

序号

设计各阶段内容

地点

起止日期

1

下达任务书,说明设计要求;收集资料

实验3#517

2

总体方案设计、详细设计

实验3#517

3

编写程序,调试分析

实验3#517

4

撰写报告并上交,辩论

实验3#517

 

五、应收集的资料与主要参考文献

[1]谭浩强.C程序设计(第三版)[M

[2]谭浩强.C程序设计题解与上机指导〔第三版〕[M

[3]李春葆曾平X斌。

C++语言程序设计题典第一版清华大学2003年4月

[5]X振安X燕君C++程序设计课程设计第一版机械工业2004年8月

 

发出任务书日期:

2007年6月18日指导教师签名:

计划完成日期:

2007年6月22日基层教学单位责任人签章:

主管院长签章:

 

1设计目的与要求……………………………………………………………1页码

2总体设计……………………………………………………………………2页码

3详细设计………………………………………………………………2—3页码

……………………………………………………2-3页码

查询单词功能模块……………………………………2页码

添加单词功能模块……………………………………3页码

删除单词功能模块…………………………………………3页码

………………………………………………………3页码

4调试分析……………………………………………4-5页码

5总结………………………………………………………………………6页码

6附录…………………………………………………………………6-10页码

6辩论记录〔正文处请留出适当空白〕…………………………………11页码

7指导教师意见〔正文处请留出十行空白〕……………………………11页码

 

1目的与要求

课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际应用问题进展有机结合,锻炼学生分析、解决实际问题的能力,提高学生项目开发与程序调试能力。

 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际应用问题进展有机结合,锻炼学生分析、解决实际问题的能力,提高学生项目开发与程序调试能力。

〔1〕总体要求

①对系统进展功能模块分析、控制模块分析正确;

②系统设计要实用;

③编程简练,可用,功能全面,具有较好的健壮性;

④说明书、流程图要清楚。

(2)课程设计报告要求

①需求和规格说明:

问题描述:

题目要解决的问题是什么?

②设计

⊕设计思路:

主要算法思想。

⊕总体设计:

程序设计组成框图、N-S流程图。

⊕详细设计:

模块功能说明〔如函数功能、入口与出口参数说明,函数调用关系描

述等〕。

③调试与测试:

调试过程中遇到的主要问题,是如何解决的;对设计和编码的回顾讨论

和分析;改良设想;经验和体会等。

④附录:

源程序清单和结果。

如果题目规定了测试数据,如此结果要包含这些测试数据和

运行输出,当然还可以含其他测试数据和运行输出;清单中应有足够的注释。

 

页码1

2总体设计

3详细设计

〔内容可以适当调整,清晰的有条理的把你的设计思路表达出来〕

查询单词功能模块

页码2

添加单词功能模块

删除单词功能模块

1.建立单词数据库〔包含英文单词、中文意思解释〕

2.用fopen函数访问单词数据库文件。

3.还用到标准的输出输入函数,按需输出输入或删除数据。

页码3

4调试分析

查询单词:

输入:

preciatian

屏幕显示:

输出结果:

sorrydonotfindwhatyouwant

添加单词:

选择2功能

输入你想添加的单词:

Hello

输入它的意思:

你好

屏幕显示:

页码4

输出结果是:

addwordsuccess

三:

删除单词:

输入你想要删除的单词:

Hello

屏幕显示:

输出结果是:

deletewordsuccess页码5

5总结

虽然这次的课程设计有些功能实现的不是很好,总的来说这次课程设计效果还是可以的,在短短的两天时间内,我们看的书的数量是非常多的,很多没见过的函数都学了,但是自学确实是很难,很多函数虽然用的语法没错,但是不能应用自如,为自己所用。

这只能说明自己还需加把努力,希望在以后的学习中得到大的进步。

通过课程设计使握进一步掌握和利用C语言进展程设计的能力;进一步理解和运用结构化程序设计的思想和方法;初步掌握开发一个小型实用系统的根本方法;学会调试一个较长程序的根本方法;而且通过这次课程设计让我学会了认真的精神态度是多么的重要,认真思考对学习的重要性。

这个程序完全是个人所做,望教师给以批评和建议!

#include

#include

#include

#include

#include

voidSearch()/*查找单词*/

{FILE*fp;

charinsert[20];

charword[40];

printf("Pleaseinputthewordyouwant:

\n");

ges(insert);

fp=fopen("wordcage","r");

if(fp==NULL);/*没有找到文件*/

{printf("\n\nSorrydonotfindwhatyouwant.\n\n");

fclose(fp);

return;

}while(!

feof(fp))/*查询单词词库*/

{fread(&wordcage,sizeof(wordcage),1,fp);

printf("%s",word);页码6

}

fclose(fp);

}

voidaddword()/*添加单词*/

{

FILE*fp;

fp=fopen("wordcage","r");/*以读方式打开文件*/

if(fp==NULL)

fp=fopen("wordcage","w");/*以写方式打开文件*/

else/*如果有单词添加*/

{fclose(fp);

fp=fopen("wordcage","a");/*以追加方式打开文件*/

}

charinsert[20];

printf("Inserthenewword:

\n");

gets(insert);

printf("Givinigthemeaning:

\n");

scanf("%s",word);

fclose(fp);

printf("\n\naddwordsuccess.\n\n");

}

voidworddel();

{

FILE*fp;

Word*head,*p,*q;

charword[20];

fp=fopen("Wordcage","rb");/*读方式打开文件*/

if(fp==NULL)

{

printf("Error!

");页码7

fclose(fp);

return;

}

head=p=q=(Word*)malloc(sizeof(Word));/*将文件内容放入链表*/

while(!

feof(fp))

{

q=p;

p=(Word*)malloc(sizeof(Word));

fread(p,sizeof(Word),1,fp);/*读记录*/

q->next=p;/*新记录插入到链表的尾*/

}

p->next=NULL;/*最后一个结点的后继为空*/

fclose(fp);

clrscr();

printf("Inputtheword:

");/*输入要删除的单词*/

gets(word);/*输入单词*/

p=head;

while(p!

=NULL)/*按名字查找要删除的图书*/

{

if(strcmp(p->name,word)==0)/*找到要删除的单词*/

{

if(p==head)/*如果是第一个结点*/

head=head->next;

else

q->next=p->next;/*不是第一个结点*/

break;

}

q=p;/*指针后移*/

p=p->next;

}页码8

fp=fopen("Word.txt","wb");/*删除后从链表的头开始重新保存*/

while(head!

=NULL)

{

fwrite(head,sizeof(Word),1,fp);/*块写*/

head=head->next;

}

fclose(fp);

clrscr();

}

voidcleanscrean()

{

printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");

}

intmain()

{

intnumble;

MENU:

printf("**************MENU***************\n\n");/*显示主菜单*/

printf("<<<<1EnglishtoChinese>>>>\n\n");

printf("<<<<2Inserthewordyouwanttoadd>>>>\n\n");

printf("<<<<3Deltheexistedword>>>>\n\n");

printf("<<<<4Cleanthescreen>>>>\n\n");

printf("<<<<5modifytheexistedword>>>\n\n");

printf("<<<<6protectthesystem>>>>\n\n");

printf("<<<<7Exitthesystem>>>>\n\n");

printf("**********************************\n");

do{

printf("Pleasechoiceform1to7:

\n");/*选择你所要的功能*/

scanf("%d",&numble);

}页码9

while(numble<0||numble>8);

switch(numble)

{

case1:

Search();

gotoMENU;

case2:

addword();

gotoMENU;

case3:

worddel();

gotoMENU;

case4:

cleanscrean();

return0;

case5:

break;

case6:

gotoMENU;

break;

case7:

break;

}

return0;

}

页码10

7辩论记录

序号

问题

回答

1

2

3

4

5

8指导教师意见

 

指导教师签名:

页码11

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 公务员考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1