日语学习小词典.doc_第1页
日语学习小词典.doc_第2页
日语学习小词典.doc_第3页
日语学习小词典.doc_第4页
日语学习小词典.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

山东交通学院面向对象课程设计题 目: 日语学习小词典 系 名: 信息工程系 专 业: 信息类 班 级 信息类083 姓 名: 唐芳 学 号: 080810329 指导教师(签字): 王成 时 间 2009-9-142009-9-25 山东交通学院课程设计报告课程设计任务书一、设计内容及要求1. 设计目的 学生根据所学的数据库原理与程序设计的知识,能够针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,测试等,完成题目要求的功能,从而达到掌握开发一个小型数据库的目的。2. 设计内容 1. 必须设计的基本数据表:日语分级单词表,常用单词例句表,短文分级表等。 2功能模块 1)实现日语单词的录入、修改、删除等基本操作。2)实现常用日语单词例句的录入、修改、删除等基本操作。3)实现日语单词检索、翻译等。4)常用日语单词例句检索。5)根据难度随机生成一份单词测试题目。6)能够检索出短文极其翻译对照表。二、设计原始资料(1)电子出版社出版的VISUAL C+ 程序设计及应用,贺怀清等编著.(2)高等教育出版社出版的数据库系统简明教程,王珊。三、设计完成后提交的文件1课程设计报告(30005000字),纸质打印稿及电子版(1)需求分析(功能模块层次图)(2)系统设计(包括详细设计和界面设计)(3)代码设计(主要功能函数)(4)测试记录(测试各项功能的正确性、容错性)(5)课程设计总结2系统程序演示。3课程设计任务书。四、进度计划9-149-15小组成员讨论程序设计的整体流程,以及系统应该具备的功能。9-169-17 小组成员按计划在Visual C+6.0环境下设计界面,其中遇到过难题。9-89-20 按计划在SQLserver环境下建立数据库及数据源,周末各自收集资料编写代码及解决问题。连接数据源及输入代码,运行调试改错。添加图片及答辩。写程设计报告五、主要参考资料1 李闽溟 Visual C+ 6.0 数据库系统开发实例导航M 人民邮电出版社2 闪四清 数据库系统原理与应用教程M 清华大学出版社3 李春葆 数据库系统原理与应用教程M 清华大学出版社4 王珊 数据库系统简明教程M 高等教育出版社 5 贺怀清 VISUAL C+ 的使用及面向对象软件工程实例分析M 电子工业出版社6 梁建武 VISUAL C+程序设计实验指导与实训M 中国水利水电出版社成 绩 评 定 表口试(答辩)成绩报告成绩总评成绩摘 要随着科学技术的迅猛发展,电子词典(日语)工作的自动化所需的软硬件条件已经成熟。因此,我们按照软件工程思想和信息管理系统的开发步骤,以社会上电子词典的应用需求为背景,设计开发了“日语学习小词典”。利用SQL server 2000及VC+6.0特开发日语学习小词典实现基本的不同级别的日语单词查询,不同级别短文查询,词汇测试,及管理者应具备的添加、修改、删除等基本功能。设计阶段分为数据库设计和VC+程序设计两大部分,以团队合作的方式相互配合交流完成。先用SQL server 2000建立数据库(数据库中含有相应的表),再用ODBC建立数据源,辞职链接成VC+中的数据库,最后对程序进行美化,引入位图资源。该说明以面向对象理论和数据库管理信息系统开发相关知识为依据,介绍了系统设计开发中的数据库以及笔者所负责的模块设计等等。最后对所实现系统的优缺点进行了分析,提出了今后进一步完善系统的方向和方法。 关键词:学习词典;数据库;面向对象 ;ODBC。随着科学技术的迅猛发展,长途汽车管理工作的自动化所需的软硬件条件已经成熟。因此,我们按照软件工程思想和信息管理系统的开发步骤,以社会上汽车站的应用需求为背景,设计开发了“长途汽车管理系统”。利用SQL server 2000及VC+6.0特开发长途汽车管理管理系统实现不同级别工作人员的需要,如售票人员的售票、退票功能;供给管理者的不同方面的查询、添加、修改及删除等基本功能。设计阶段分为数据库设计和VC+程序设计两大部分,以团队合作的方式相互配合交流完成。先用SQL server 2000建立数据库(数据库中含有相应的表及存储工程、触发器),再用ODBC建立数据源,辞职链接成VC+中的数据库,最后对程序进行美化,引入位图资源。该说明以面向对象理论和数据库管理信息系统开发相关知识为依据,介绍了系统设计开发中的数据库以及笔者所负责的模块设计等等。最后对所实现系统的优缺点进行了分析,提出了今后进一步完善系统的方向和方法。科学技术急速発展伴、管理仕事自動化必要条件得。、私工学的思想情报管理开発社会手顺応用需要背景、开発管理発表。sql server 2000,vc+利用,特别関系者必要管理系開発。,売機能退機能高级管理者機能需求分析此次课程设计我们选择的课题是日语学习小词典软件,立足于社会实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提日语学习此点应用水平,实现信息资源的共享。随着社会的发展,人们使用电子词典以及网上记忆词汇例句的机会越来越多。笨重的词典书本已不再是人们的首选了,词典词汇书笨重加大了工作量,且效率低,大大的降低人们的学习效率。计算机的使用,词汇学习实现数字化,使用计算机可以高速,快捷地完成对单词信息的查询,对对应例句短文检索记忆以及做相应的测试题等工作。 在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,从而提高了学习的效率。首先进行的是对系统的总体设计。考虑到用户及管理者的实际需求,进行恰当的安排。然后是数据库的设计,数据库的设计来源于系统的总体要求。用企业管理器实现的数据库创建,数据库中共有七个表。分别记录词汇、例句、翻译、短文,测试题(其中有的信息在同一个表上)等。然后又用了ODBC建立了数据源。然后是程序代码的编写,调试及运行。日语学习小词典系统需要满足来自两方面的需求,这两个方面分别是用户、管理人员的需求。该日语学习小词典是围绕词典的各项业务活动而建立的,用户可以查阅词汇、例句、短文以及完成测试等功能,只拥有查询权利没有修改信息的权利。管理者可以进行信息管理,信息管理包括信息录入、信息修改、信息删除三项,录入信息管理管理包括词汇添加、例句添加、短文添加;修改信息管理包括词汇修改、例句修改、短文修改;删除信息管理包括词汇删除、例句删除、短文删除。因用户没有更改信息的权利,所以用户登陆无需密码。管理者需要凭用户帐号和密码登陆,账号和密码错误均不能登陆,这样保证了日语词典信息信息的安全和可靠性。考虑到实用性,当登录、查询、添加、修改、删除等功能成功时。这时用户及管理舍得到了更多的便利。1课程设计概述1.1 Visual C+6.0概述Visual C+是微软公司的重要产品之一, 是一种功能强大行之有效的可视化编程工具。它提供了MFC类库,使用户可以方便的开发自己想实现的功能。Visual C+6.0的主要特点:(1)自动化和宏功能。(2)可以灵活地定制工具栏和菜单。(3)可以直接运行和调试程序,还可以使用宏语言来自动操作调试器。(4)支持Internet连接。(5)一个新的便捷的项目系统可以允许一个工作区内包含多个不同的项目类型。(6)在工作区内可以包含多个并列的工程文件。(7)可以在对话框中使用WizardBar将程序同可视化元素联系起来。(8)Find in File命令支持两个独立的输出窗格,可以保存上一次搜索的结果。这些新特性可以更好地利用Visual C+开发工具进行Windows应用程序开发。1.2 Visual C+6.运行图 1-1 Visual C+6.0运行环境2 软件概述2.1 总体设计思想考虑到市场的形式及客户的需要,我觉得日语学习小词典应该包含两个主要模块:用户使用模块和管理者使用模块。2.1.1用户使用模块1、词汇查询模块(1)三级词汇查询模块(2)二级词汇查询模块2、短文查询模块(1)三级短文查询模块(2)二级短文查询模块3、 词汇测试题模块(1)三级词汇测试题模块(2)二级词汇测试题模块2.1.2管理者使用模块 1、管理者密码登录模块2、词汇修改模块(1)三级词汇修改模块(2)二级词汇修改模块3、短文修改模块(1) 三级电文修改模块(2) 二级短文修改模块 程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性;同时也给客户使用时带来了便利。2.2 总体设计流程图日语学习小词典用户使用模块管理者登录模块信息修改模块三级词汇查询二级词汇查询三级短文查询二级短文查询二级测试题三级测试题三级词汇修改二级词汇修改三级短文修改二级短文修改图 2-1 设计流程图3 数据库概况3.1 数据库的实施数据库的创建是在企业管理器里面用可视化的操作完成,建立数据库riyuxuexixiaocidian。下面用类似的方法建表,建了七个表,分别起名为:sanjicihui(三级词汇查询表)、sanjiduanwen(三级短文查询表)、sanjicihuiceshiti(三级词汇测试题表)、erjicihui(二级词汇查询表)、erjiduanwen(二级短文查询表)、sanjicihuiceshiti(二级词汇测试题表)和mima(密码表)。下面就是输入数据了,分别在这样表中输入数据,分析好数据的安排后注意这么多表之间的联系,属性相对应。图3-1数据库表3.2个子系统的数据表日语学习小词典数据库总共有八个表1)用户使用子系统功能:实现用户查询词汇、相应的例句、短文以及用户进行在线测试。查询和测试:根据用户选择的指令来选择不同的表执行命令。需配置的表:字段中文名字段名类型编号bianhaochar(4)单词dancichar(20)汉语意思hanyuyisi char(30)日语例句riyuliju varchar(500)例句翻译lijufanyivarchar(500)表 3-2 三级词汇 字段中文名 字段名类型编号bianhaochar(3)短文duanwenverchar(200)翻译fanyiVerchar(200)表 3-3 三级短文字段中文名字段名类型编号bianhaochar(4)试题shitiverchar(200)答案daanverchar(200)表3-4 三级词汇测试题字段中文名字段名类型编号bianhaochar(4)单词dancichar(20)汉语意思hanyuyisi char(30)日语例句riyuliju varchar(500)例句翻译lijufanyivarchar(500)表 3-5 二级词汇表 字段中文名 字段名类型编号bianhaochar(3)短文duanwenverchar(200)翻译fanyiVerchar(200)3-6 二级短文表字段中文名字段名类型编号bianhaochar(4)试题shitiverchar(200)答案daanverchar(200)3-7二级词汇测试题2)管理者使用子系统 功能:实现管理者对信息的添加、修改、删除;另外还有管理者登录时的密码表。具体功能:根据管理者的指令选择代码执行。需要配置的表:字段中文名字段名类型用户名Userschar(7)密码pdchar(4) 表3-8 密码登录管理者应用的sanjicihui、sanjiduanwen、erjicihui、erjiduanwen表和前面的几个表一样。用户和管理者应用的界面都可以调用。4 软件测试部分4.1登陆界面展示此图展示的是登录的主界面,有三个空间按钮,分别是用户主菜单、管理界面和退出。选择不同的按钮可以执行不同的指令。图4-1 登录主菜单4.2 用户主菜单界面图片上有七个按钮分连接到不同的界面上的,运用函数,代码如下:图4-2 用户主菜单void a1:OnButton1() /定义类对象,调用函数DoModal()返回到需要的界面上/ TODO: Add your control notification handler code herea4 kkk;kkk.DoModal();4.2.1单词查询(1)三级词汇查询图 4-3 三级单词查询图片上有静态文本,按钮,;编辑框,列表控件(后面两个需要定义变量),这里先展示连接数据库的函数的主要代码:void a3:OnButton2() / TODO: Add your control notification handler code hereCDatabase m_db;CString strConnect;CStringm_bDSN=riyucidian;连接数据源strConnect.Format(DSN=%s,m_bDSN);TRYCRecordset rs(&m_db);/类对象代表一个从数据源中获取的纪录集rs.Open(CRecordset:dynaset, select * from sanjicihui);/打开所有的用户信息记录while (!rs.IsEOF() CString bh4,dc4,hyys4,rylj4,ljfy4;/CDBVariant var;rs.GetFieldValue(short)0,bh4); /获取标号字段值rs.GetFieldValue(1,dc4); /获取单词字段值rs.GetFieldValue(2,hyys4); /获取汉语意思字段值rs.GetFieldValue(3,rylj4);获取日与例句字段值rs.GetFieldValue(4,ljfy4);获取例句翻译字段值int nIndex =m_list4.GetItemCount();LV_ITEM lvItem;lvItem.mask = LVIF_TEXT ;lvItem.iItem = nIndex;/行数lvItem.iSubItem = 0;CString temp,sdt;temp.Format(%s,sdt);lvItem.pszText = (char*)(LPCTSTR)temp;/第一列m_list4.InsertItem(&lvItem);/在最后一行插入记录值.m_list4.SetItemText(nIndex,0,bh4); /设置该行的其他列的值.m_list4.SetItemText(nIndex,1,dc4);连接数据库时将数据库的信息显示在对话框m_list4.SetItemText(nIndex,2,hyys4);列表空件中m_list4.SetItemText(nIndex,3,rylj4);m_list4.SetItemText(nIndex,4,ljfy4);rs.MoveNext();rs.Close();UpdateData(FALSE);(2) 二级词汇查询 图 4-4二级单词查询查询的主代码:void a3:OnOK() / TODO: Add extra validation hereCStringm_bDSN=riyucidian;strConnect.Format(DSN=%s,m_bDSN);CRecordset rs(&m_db);/类对象代表一个从数据源中获取的纪录集/打开所有的用户信息记录rs.Open(CRecordset:dynaset, select * from sanjicihui );while (!rs.IsEOF() CString bianhao,danci,hanyuyisi,riyuliju,lijufanyi; rs.GetFieldValue(short)0,bianhao);/获取词汇字段值 rs.GetFieldValue(1,danci); rs.GetFieldValue(2,hanyuyisi);/获取翻译字段值 rs.GetFieldValue(3,riyuliju); rs.GetFieldValue(4,lijufanyi);/获取等级字段值 bianhao.TrimRight( ); if(m_bh4=bianhao)MessageBox(查询成功!); m_dc4=danci; m_hyys4=hanyuyisi; m_rylj4=riyuliju;m_ljfy4=lijufanyi; break;/赋值五个显示框中的内容 rs.MoveNext();rs.Close()UpdateData(FALSE);4.2.2 短文查询 (1) 三级短文查询执行时列表控件中也显示与数据库相对应的列名,它的实现函数如下:BOOL a5:OnInitDialog() CDialog:OnInitDialog();/ TODO: Add extra initialization here m_list6.InsertColumn(0,编号,LVCFMT_CENTER,50); m_list6.InsertColumn(1,短文,LVCFMT_LEFT,2000); m_list6.InsertColumn(2,翻译,LVCFMT_LEFT,1500); return TRUE; / return TRUE unless you set the focus to a control图 4-5 三级短文查询(2) 二级短文查询图 4-6 二级短文查询4.2.3 词汇测试题 (1) 三级词汇测试题 词汇测试题的对话框使用了两次按钮控件:按“出题”按钮先出来要测试的题,在按”显示答案”按钮,在编辑框中显示答案;图 4-7 三级词汇测试题 (2) 二级词汇测试题.图 4-8 二级词汇测试题4.3 管理着用户4.3.1 管理者密码登录密码登录的函数是一个重要的函数,它也和数据库有着联系.,代码如下:void a2:OnOK() / TODO: Add your control notification handler code hereUpdateData(TRUE); if(m_yonghuming=) MessageBox(请输入用户名); else if(m_mima=) MessageBox(请输入密码); elseint i=0; if(link=0) UpdateData(true); CString strcon;strcon.Format(DSN=%s,riyucidian);m_db.OpenEx(strcon,CDatabase:noOdbcDialog); link=1; if(!m_db.IsOpen() MessageBox(数据库未打开);return;CRecordset rs(&m_db);/类对象代表一个从数据源中获取的纪录集/打开所有的用户信息记录CString sql;sql=SELECT * FROM Users WHERE Users=+m_yonghuming+ AND pd=+m_mima+;rs.Open(CRecordset:dynaset,sql);if(!rs.IsEOF()MessageBox(登录成功);EndDialog(IDCANCEL);a9 a; a.DoModal();elseMessageBox(用户名和密码不一致); 图 4-9 管理者登录图 4-10 进入管理主菜单4.3.2 词汇修改(1) 三级词汇修改.4-11 三级词汇修改实现添加功能的函数,将编辑框里的内容添加到数据库中,同时在列表控件中显示出来:void a10:OnButton1() / TODO: Add your control notification handler code here UpdateData(true); CDatabase m_db;CString strConnect;CStringm_bDSN=riyucidian;/连接数据源CString m_insert;strConnect.Format(DSN=%s,m_bDSN); m_db.OpenEx(strConnect,CDatabase:noOdbcDialog); if(!m_db.IsOpen()MessageBox(数据库未打开);return; m_insert.Format(insert into sanjicihui (bianhao,danci,hanyuyisi,riyuliju,lijufanyi) values (%s,%s,%s,%s,%s),m_bh,m_dc,m_hyys,m_rylj,m_ljfy);m_db.ExecuteSQL(m_insert);MessageBox(添加成功!);/此函数调用是为从小对话框中显示提示(2) 二级词汇修改图 4-12 二级词汇修改实现修改功能的函数,将数据库里错误的信息替换:void a10:OnButton2() / TODO: Add your control notification handler code hereCDatabase m_db;CString strConnect;CStringm_bDSN=riyucidian;/连接额数据源 CString m_chaxun; CString a;CString b;strConnect.Format(DSN=%s,m_bDSN);m_db.OpenEx(strConnect,CDatabase:noOdbcDialog); UpdateData(true); a.Format(update sanjicihui set danci=%s, hanyuyisi=%s, riyuliju=%s, lijufanyi=%swhere bianhao=%s,m_dc,m_hyys,m_rylj,m_ljfy,m_bh); m_db.ExecuteSQL(a); MessageBox(修改成功);4.3.3 短文修改图 (1)三级短文修改图 4-13三级短文修改 实现删除功能的函数,可以将数据库里错误的信息按编号删除:void a10:OnButton3() / TODO: Add your control notification handler code hereUpdateData(true); CDatabase m_db;CString strConnect;CStringm_bDSN=riyucidian;CString m_delete;strConnect.Format(DSN=%s,m_bDSN); m_db.OpenEx(strConnect,CDatabase:noOdbcDialog);if(!m_db.IsOpen()MessageBox(数据库未打开);return; m_delete.Format(delete from sanjicihui where bianhao=%s,m_bh); MessageBox(删除成功!); (2) 二级短文修改图 4-14 二级短文修改5 开发总结为了提高我们的实践能力,让我们学以致用,能灵活运用所学的知识进行再创造,学校特安排我们进行为期二周的Visual C+课程设计实习,并安排了指导老师帮助辅导,让我们在规范化、严谨化、实用化上面有了很大进展。在此次日语学习小词典程序开发过程中,有很多东西值得我们思考并总结。开发过程大体可分为以下几个步骤:(1)思考总体设计方案:总体结构和数据库的设计,功能分配。思考要实现整个程序大体需要的几个模块和其中用到的Visual C+语言中的基本对话框等。(2)画出总体设计方案流程图:用流程图的形式展现你的基本编程思想。(3)流程图具体化:即将流程图中的几大模块的具体实现思考清楚,可以用流程图的形式展现并想好实现的关键代码。(4)编辑程序代码:这是一个至关重要复杂而且需要反复修改的环节,在此环节中你将发现总体设计和模块思想会存在很多问题,需不断改进如何实现数据库与对话框的连接是一大重点和难点,达到预期效果也将是一项繁复的工作。(5)代码的调试:在Visual C+6.0环境下输入代码并进行调试和正确运行。在调试过程中会遇到很多需要精化的地方,需要十足的耐心与细心,不断改进完善程序。(6)最后修饰:程序可以正确运行之后,再不影

温馨提示

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

评论

0/150

提交评论