C语言程序设计课程设计报告电子英汉词典设计

  • 格式:doc
  • 大小:1.01 MB
  • 文档页数:29

下载文档原格式

  / 29
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告

课程名称《C语言程序设计》

课题名称电子英汉词典设计

专业信息管理与信息系统

班级

学号

姓名

指导教师

2011 年6 月22 日

一、设计内容与设计要求

1.课程设计目的

全面熟悉、掌握C语言基本知识,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为后继课程(数据结构和数据库等课程)的实验以及课程设计打下较扎实的基础。

2.课题题目

⑴班级成绩管理系统

⑵班级档案管理系统

⑶飞机订票系统

⑷猜数字游戏

⑸电子英汉词典设计

⑹通讯录管理系统

3.设计要求

掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一些实际的中型问题,为将来开发软件积累一些典型的案例处理经验。

具体要求如下:

⑴设计课题题目:每位同学根据自己学号除以6所得的余数加一选

择相应题号的课题。原则上不予换提,私自换题者不记成绩。

⑵根据自己对应的课题完成以下主要工作:①完成系统需求分析:包括

系统设计目的与意义;系统功能需求;输入输出的要求。②完成系统概要设计:程序由哪些模块组成以及模块之间的层次结构、各模块的调用关系;每个模块的功能;课题涉及的数据结构和数据库结构;即要存储什么数据,这些数据是什么样的结构,它们之间有什么关系等。③完成系统详细设计:包括采用C语言定义相关的数据类型;写出各模块的类C码算法;画出函数的调用关系图。④调试分析、设计体会、测试数据:准备典型的测试数据和测试方案,包括正确的输入及输出结果和含有错误的输入及输出结果;程序调试中遇到的问题以及解决问题的方法;课程设计过程经验教训、心得体会。

⑤关键源程序(带注释)

⑶按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师

存档。

⑷不得抄袭他人程序、课程设计报告,每个人应体现自己的个性设

计。

二、进度安排

第17 周星期一8时:00分——11时:30分

星期二8时:00分——11时:30分

星期四8时:00分——11时:30分

星期五8时:00分——11时:30分

第18 周星期一8时:00分——11时:30分

第18周星期二14时:30分——18时:00分

目录

1.系统需求分析 (1)

1.1问题描述 (1)

1.2功能要求 (1)

2.概要设计 (2)

2.1系统的总体设计 (2)

2.2各模块的功能 (3)

2.3相关数据结构设计 (3)

3.详细设计 (4)

3.1采用C语言定义相关的数据类型 (4)

3.2各功能模块的流程图 (5)

4.系统调试 (10)

5.运行结果 (11)

5.1查询单词界面 (11)

5.2新增词条界面 (13)

5.3编辑词条界面 (15)

5.4删除词条界面 (17)

5.5退出字典 (17)

6.心得体会 (18)

7.附录 (18)

7.1参考书目 (18)

7.2源程序清单 (18)

8.评分表 (24)

1.系统需求分析

1.1问题描述

英汉词典作为一个常用的学习工具,是我们经常要使用的。该系统能完成一个简单的电子英汉词典的功能,如:单词的查找、增词、删除、修改和维护等工作。

1.2功能要求

(1) 在计算机中建立有限规模的电子英汉词典(文件),利用程序实现电

子英汉词典的查找、增词、删除、修改和维护工作。

(2) 词典的内容为:每行对应一个词条,每个词条由两个字符串组成,

字符串用若干空格符分开;前一个是单词字符串(英文),后一个是释义字符串(中文),使用分号作为多个释义的分隔符(无空格)。

(3) 对单词和释义字符串长度的限定分别为不少于20个与40个字符,

词条数限定为不多于200条。

(4) 采用菜单工作方式。在一个操作执行之后,程序询问是否继续执行

该操作。如输入Y或y,则重复同一操作,不退回到菜单;如输入其它信息,则回到菜单等待另一次选择。仅当选择退出操作时,程序应询问是否将修改后的词典存盘,并根据用户选择存盘退出或不存盘退出。

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

2.概要设计

2.1系统的总体设计

程序共有六个子函数和一个主函数:

(1)query(void)是查找函数。

(2)append(void)是新增函数。

(3)edit(void)是编辑函。

(4)erase()是删除函数。

(5)add()是一个初始化函数。

(6)lookup()是用来实现单词查询的一个子函数。

(7)主程序通过无限循环来接收输入的命令,并且根据命令调用相应的函数

处理。

图2.1 总体设计图

2.2各模块的功能

(1) query是查找函数,用户通过系统提示输入要查找的单词,只要单词库

中含有此单词便能找到相应的中文解释。

(2)append是新增函数,用户可通过此函数来增加单词库单词的数量。

(3)edit是编辑函数,程序提示用户输入要修改的单词,如果找到,则提示

输入新单词及中文解释。

(4) erase是删除函数,程序提示用户输入要删除的单词,在得到确认后,

删除这个单词的纪录。

(5) add是一个初始化函数,让建立的词库里有一部分单词。

(6) lookup是用来实现单词查询的一个子函数。

2.3相关数据结构设计

(1) 宏定义的一些相关数据

#define szWORD 32

#define szSTRN 224

#define szITEM sizeof(struct TItem)

char fileDict[szSTRN];

(2) 开头定义一个结构体数组用于单词和释义的存放