最新英语词典课程设计报告 免费下载.doc_第1页
最新英语词典课程设计报告 免费下载.doc_第2页
最新英语词典课程设计报告 免费下载.doc_第3页
最新英语词典课程设计报告 免费下载.doc_第4页
最新英语词典课程设计报告 免费下载.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

最新英语词典课程设计报告 免费下载.doc.doc 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

山东交通学院山东交通学院 面向对象课程设计面向对象课程设计 英语学习小词典 院 系 信电学院 班 级 计算 111 姓 名 学 号 110811123 指导教师 钱 斌 时 间 2012 10 10 2012 10 21 课程设计任务书 题 目 英语学习小词典 C 语言 课程设计 系 部 信电学院 专 业 计算机科学与技术 班 级 计算 111 姓 名 学 号 10 月月 10 日至日至 10 月月 21 日日 共共 2 周周 指导教师 签字 系 主 任 签字 年年 月月 日日 课程设计任务书课程设计任务书 一 设计内容及要求一 设计内容及要求 1 设计目的 学生根据所学的数据库原理与程序设计的知识 能够针对一个小型的数据库管理系统 进行 系统的需求分析 系统设计 数据库设计 编码 测试等 完成题目要求的功能 从而达到掌握 开发一个小型数据库的目的 2 设计内容 1 必须设计的基本数据表 英语分级单词表 常用单词例句表 短文分级表等 2 功能模块 1 实现英语单词的录入 修改 删除等基本操作 2 实现常用英语单词例句的录入 修改 删除等基本操作 3 实现英语单词检索 翻译等 4 常用英语单词例句检索 5 根据难度随机生成一份单词测试题目 6 能够检索出短文极其翻译对照表 二 设计原始资料二 设计原始资料 1 电子出版社出版的 VISUAL C 程序设计及应用 贺怀清等编著 2 高等教育出版社出版的 数据库系统简明教程 王珊 三 设计完成后提交的文件三 设计完成后提交的文件 1 课程设计报告 3000 5000 字 纸质打印稿及电子版 1 需求分析 功能模块层次图 2 系统设计 包括详细设计和界面设计 3 代码设计 主要功能函数 4 测试记录 测试各项功能的正确性 容错性 5 课程设计总结 2 系统程序演示 3 课程设计任务书 2 图纸部分 序流程图程序 程序开始 主界面 测试数据 库 单 词 短 文 例 句 查询 单 词 短 文 例 句 高 级 低 级 退 出 程序结束 四 进度计划四 进度计划 10 月 10 10 月 12 日完成需求分析和系统设计 10 月 13 日 10 月 16 日完成代码设计 10 月 17 日 10 月 20 日测试和调试 10 月 21 日参加答辩 五 主要参考资料五 主要参考资料 1 李闽溟等 Visual C 6 0 数据库系统开发实例导航 M 北京 人民邮电出版 社 2 闪四清 数据库系统原理与应用教程 M 清华大学出版社 成 绩 评 定 表 作品成绩报告成绩口试 答辩 成绩 总评成绩 摘摘 要要 对于我们 随着学习的深入 已经大体掌握了 Visual C 6 0 环境下的程序 开发 为了将我们的编程能力提升到一个更高的水平 深化面向对象的编程思 维和解决问题的能力 值此课程设计周期间 进行基于 Visual C 6 0 环境的软 件开发 先以字符统计软件作为开始 对 Visual C 6 0 环境和面向对象程序设 计进行回忆和熟悉 使得在此基础上的下一个课程设计的开发进行的更加顺利 本文档详细叙述了基于 Visual C 6 0 环境下的英语学习小词典系统软件的 设计过程以及程序源代码 本文档从概要设计 详细设计 参考源程序代码以及显示程序运行的截屏 等方面详尽的介绍了软件开发过程 程序在设计的过程中遇到的问题已及时更正 但由于编者的能力和水平有 限 字符统计软件和文档中不免会出现一些不期待的错误 望文档读者能够理 解和体谅 并欢迎提醒和纠正 在此表示感谢以及敬意 目录 1 1 课程设计概述课程设计概述 8 1 1 英语学习小词典题目及简介 8 1 2 开发环境概述 8 2 2 总体设计总体设计 8 2 1 项目规划 8 2 2 系统结构流程图 9 2 3 数据库逻辑结构 10 3 3 功能模块界面及程序代码功能模块界面及程序代码 11 3 1 主界面模块设计 11 3 2 数据库登陆框设计 12 3 3 操作数据库模块设计 14 3 3 1 单词添加模块 14 3 3 2 单词删除模块 16 3 3 3 单词修改模块 18 3 4 查询模块设计 21 3 5 随机生成单词测试表模块设计 24 4 4 设计体会设计体会 28 参考文献参考文献 28 1 1 英语学习小词典题目及简介 根据软件需求 要求软件具有以下功能 1 实现英语单词的录入 修改 删除等基本操作 2 实现常用英语单词例句的录入 修改 删除等基本操作 3 实现英语单词检索 翻译等 4 常用英语单词例句检索 5 根据难度随机生成一份单词测试题目 6 能够检索出短文极其翻译对照表 数据库系统主要为登陆 登陆后可以浏览 添加 删除 修改各种单词 单词例句 英语短文信息 1 2 开发环境概述 硬件要求 CPU 300MHz 以上的处理器 内存 128MB 推荐 256MB 硬盘 150MB 以上剩余空间 显示像素 最低 800 600 最佳效果 1024 768 软件要求 操作系统 Windows2000 NT XP Vista Win7 数据库 SQL Server2000 2 1 项目规划 根据需求分析 设计程序框架 英语词典学习软件由 3 大部分组成 设计 各部分具体功能如下 1 查询模块 包括单词查询 单词例句查询 短文翻译查询 2 用户密码模块 包括用户名 密码 3 数据库模块 包括三个表 单词表 单词例句表 短文表 可以实现各 个表信息的添加 修改 删除 4 测试模块 随机生成一份单词测试表 2 2 系统结构流程图 程序开始 主界面 测试数据 库 单 词 短 文 例 句 查询 单 词 短 文 例 句 高 级 低 级 退 出 程序结束 2 3 数据库逻辑结构 本系统采用 SQL Server 2000 数据库 系统数据库名为 Dictionary 其 中共包含 3 个自己建的表 表 2 1 单词表 字段中文名字段名类型长度 单词danci文本10 单词翻译dancifanyi文本50 编号ID自动编号 表 2 2 单词例句表 字段中文名字段名类型长度 单词 danci 文本 10 单词例句 danciliju 文本 150 编号 lijuID 自动编号 表 2 3 英语低级短文表 字段中文名字段名类型长度 短文duanwen文本190 短文翻译duanwenfanyi文本225 编号duanwenID自动编号 表 2 3 英语高级短文表 字段中文名字段名类型长度 短文duanwen文本190 短文翻译duanwenfanyi文本225 编号duanwenID自动编号 表 2 5 登陆表 字段中文名字段名类型长度 用户user文本10 密码password文本10 3 1 主界面模块设计 弹出窗口按钮 代码 denglu dlg dlg DoModal 其余按钮代码相同 3 2 数据库登陆框设计 数据库登录按钮的代码 void denglu OnOK TODO Add extra validation here UpdateData TRUE dengluset userset CString sqlStr CDatabase m OPEN DATABASE m Open T EnglishDic if m IsOpen MessageBox 不能打开数据库 return if m struser IsEmpty MessageBox 请输入用户名 Prompt m cstruser SetFocus return if m strpassword IsEmpty MessageBox 请输入密码 Prompt m cstrpassword SetFocus return sqlStr Format select from user where user s AND password s m struser m strpassword if userset Open AFX DB USE DEFAULT TYPE sqlStr MessageBox 不能打开数据库 Database Error MB OK return RECORDCOUNT if userset GetRecordCount 0 userset Close MessageBox 密码错误 请再次输入 Error m strpassword m cstrpassword SetFocus UpdateData FALSE else userset Close CDialog OnOK danci dlg dlg DoModal 若用户为空则提示 容错性 若密码错误 则提示 错误密码提示界面 3 3 1 单词添加模块 跳转窗口代码 void CEnglishDictionaryDlg OnBUTTONWord TODO Add your control notification handler code here denglu dlg dlg DoModal ShowItem select from dancitable 单词添加窗口如图所示 具体代码如下 void danciadd OnOK TODO Add extra validation here UpdateData TRUE if m Englishdanci IsEmpty MessageBox NULL English not kong add English MB OK MB ICONINFORMATION MB TASKMODAL return danciset danciset TRY if danciset Open CRecordset dynaset NULL CRecordset appendOnly MessageBox NULL 打开数据 失败 base operator MB OK MB ICONEXCLAMATION return if danciset CanAppend MessageBox NULL 记录不能够被操作 base operator MB OK MB ICONEXCLAMATION return danciset AddNew danciset m danci m Englishdanci danciset m dancifanyi m Chinesedanci danciset Update danciset Close CATCH ALL e e ReportError if danciset IsOpen danciset Close MessageBox NULL 搜索数据失败 base operator MB OK MB ICONEXCLAMATION return END CATCH ALL UpdateData FALSE CDialog OnOK 如果输入有误 像英语单词为空 则会有相应的提示 3 3 2 单词删除模块 未选择记录时的提示语 然后确定后 再选择 选择单词 hard 进行删除 点击 DELETE 按钮 还会有更进一步的提示 是否确定删除 是则删除 否则不删 删除按钮的具体代码 void danci OnButtonDelete TODO Add your control notification handler code here UpdateData TRUE POSITIONpos intiPos CString EnglishID pos m listdanci GetFirstSelectedItemPosition if pos NULL MessageBox NULL 请选择 要删除的记录 dancitale MB OK MB ICONINFORMATION MB TASKMODAL return if AfxMessageBox 你确定要删除吗 MB ICONQUESTION MB YESNO MB DEFBUTTON2 IDNO return iPos m listdanci GetNextSelectedItem pos EnglishID m listdanci GetItemText iPos 0 CString strSQL strSQL Format delete from dancitable where danci s EnglishID CDatabase db CString strCon strCon Format DSN s UID s PWD s dancitable db Open EnglishDic db ExecuteSQL strSQL db Close ShowItem select from dancitable UpdateData FALSE 3 3 3 单词修改模块 单词修改首先也要找到单词记录 然后在单词修改对话框中显示您要修改 的单词对象 以便修改 修改后更新数据库 未选择但此时的画面 选定修改单词画面 EDIT 按钮具体代码 void danci OnButtonEdit TODO Add your control notification handler code here danciedit editdlg POSITIONpos intiPos pos m listdanci GetFirstSelectedItemPosition if pos NULL AfxMessageBox 请选择要编辑的记录 return iPos m listdanci GetNextSelectedItem pos editdlg m Englishdanci m listdanci GetItemText iPos 0 editdlg m Chinesedanci m listdanci GetItemText iPos 1 editdlg m strID m listdanci GetItemText iPos 2 editdlg DoModal ShowItem select from dancitable UpdateData FALSE 在修改对话框中显示所选单词画面 修改单次数据库的具体代码 void danciedit OnOK TODO Add extra validation here UpdateData TRUE if m Englishdanci IsEmpty MessageBox NULL English not kong add English MB OK MB ICONINFORMATION MB TASKMODAL return CString strTmp strTmp Format SELECT FROM dancitable where ID s m strID danciset danciset danciset Open CRecordset dynaset strTmp CRecordset none danciset Open CRecordset dynaset strTmp CRecordset none danciset Edit danciset m danci editdlg m Englishdanci danciset m dancifanyi editdlg m Chinesedanci danciset Update danciset Close TRY if danciset Open CRecordset dynaset strTmp CRecordset none MessageBox NULL 打开数据表格失败 base operator MB OK MB ICONEXCLAMATION return if danciset CanUpdate MessageBox NULL 记录暂不能更新 base operator MB OK MB ICONEXCLAMATION return danciset Edit danciset m danci m Englishdanci danciset m dancifanyi m Chinesedanci danciset Update danciset Close CATCH ALL e e ReportError if danciset IsOpen danciset Close MessageBox NULL search base failed base operator MB OK MB ICONEXCLAMATION return END CATCH ALL strTmp Format update dancitable set danci s dancifanyi s where ID s editdlg m Englishdanci editdlg m Chinesedanci editdlg m strID UpdateData FALSE CDialog OnOK ALL 按钮的具体代码 void dancid OnButtonAll TODO Add your control notification handler code here ShowItem select from dancitable 3 3 查询模块设计 单词搜索按钮的代码 void CEnglishDictionaryDlg OnBUTTONSearch TODO Add your control notification handler code here UpdateData TRUE danciset danciset if m strdanci IsEmpty MessageBox NULL 英语单词不能为空 add English MB OK MB ICONINFORMATION MB TASKMODAL return else CString strSQL strSQL Format select from dancitable where danci s m strdanci if danciset Open CRecordset dynaset strSQL CRecordset none AfxMessageBox field return else m strdancifanyi danciset m dancifanyi danciset Close if m strdancifanyi IsEmpty AfxMessageBox Base have not record UpdateData FALSE 单词例句搜索按钮代码 void CEnglishDictionaryDlg OnBUTTONSearch1 TODO Add your control notification handler code here UpdateData TRUE dancilijuset dancilijuset if m strdanci IsEmpty MessageBox NULL 英语单词不能为空 add English MB OK MB ICONINFORMATION MB TASKMODAL return else CString strSQL strSQL Format select from dancilijutable where danci s m strdanci if dancilijuset Open CRecordset dynaset strSQL CRecordset none AfxMessageBox field return else m strliju dancilijuset m danciliju dancilijuset Close if m strliju IsEmpty AfxMessageBox Base have not record UpdateData FALSE 短文翻译按钮代码 void CEnglishDictionaryDlg OnBUTTONTranslate TODO Add your control notification handler code here UpdateData TRUE duanwenset duanwenset if m strliju IsEmpty MessageBox NULL 英语例句不能为空 add English MB OK MB ICONINFORMATION MB TASKMODAL return else CString strSQL strSQL Format select from duanwentable where duanwen s m strliju if duanwenset Open CRecordset dynaset strSQL CRecordset none AfxMessageBox field return else m strduanwen duanwenset m duanwenfanyi duanwenset Close if m strduanwen IsEmpty AfxMessageBox UpdateData FALSE 查询 a 的结果画面 3 5 随机生成单词测试表模块设计 利用随机数生成函数 再做相应的处理 生成不会重复的随机数 利用它 为查询条件 查找单词表中的 ID 生成对应的单词单词测试表 显示在对话框 中 每一次的点击便可随机产生一份单词测试表 void CEnglishDictionaryDlg OnBUTTONTest TODO Add your control notification handler code here test dlg danciset danciset int b 6 srand time 0 srand time NULL for int i 0 i 6 i b i rand 23 for int j 0 j i j if b j b i b i 0 i break dlg m test1 Format d i testID Format d i CString strSQL strSQL Format select from dancitable where ID d b 0 if danciset Open CRecordset dynaset strSQL CRecordset none AfxMessageBox field return else dlg m test1 danciset m danci dlg m 7 danciset m dancifanyi danciset Close UpdateData FALSE CString strSQL1 strSQL1 Format select from dancitable where ID d b 1 if danciset Open CRecordset dynaset strSQL1 CRecordset none dlg m test2 danciset m danci dlg m 8 danciset m dancifanyi danciset Close UpdateData FALSE CString strSQL2 strSQL2 Format select from dancitable where ID d b 2 if danciset Open CRecordset dynaset strSQL2 CRecordset none dlg m test3 danciset m danci dlg m 9 danciset m dancifanyi danciset Close UpdateData FALSE CString strSQL3 strSQL3 Format select from dancitable where ID d b 3 if danciset Open CRecordset dynaset strSQL3 CRecordset none dlg m test4 danciset m danci dlg m 10 danciset m dancifanyi danciset Close UpdateData FALSE CString strSQL4 strSQL4 Format select from dancitable where ID d b 4 if danciset Open CRecordset dynaset strSQL4 CRecordset none dlg m test5 danciset m danci dlg m 11 danciset m dancifanyi danciset Close UpdateData FALSE CString strSQL5 strSQL5 Format select from dancitable where ID d b 5 if danciset Open CRecord

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论