计算机毕业设计论文Word文件下载.docx
《计算机毕业设计论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机毕业设计论文Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
本系统是本着实用的原则开发的,此系统包括两大功能:
C语言上机练习系统和上机考试系统。
在本论文中,对整个系统从开发背景到需求分析,提出了解决问题的具体方法。
在系统的具体设计中描述了系统中各个模块的功能和具体应用,在系统实现的章节中,给出了每个模块的具体实现方法和步骤,在论文的最后,给出了系统的详细测试过程和测试结果。
说明本系统能够运行并能够实现预期的功能。
本次系统中,主要采用VC技术实现各个功能模块,在数据库管理方面,采用了SQLServer2000数据库。
界面友好,管理方便。
关键词C语言智能练习考试系统
Abstract:
Withtherapiddevelopmentincomputertechnology,computerapplicationsandisutilizedachievevariousmanagementimperativecomputerinvariousfields,thecomputerasaproductoftheknowledgeeconomyera,hasbeenwidelyusedinvariousindustriesandsectorsofsociety.
Ifyouwanttocontrolcomputerforthepeople,musthavetheappropriatesoftwareas.In-depthlearningprogramming.Clanguageisgrowingsorapidlyandbecomeoneofthemostpopularlanguages,mainlybecauseofitspowerfulfeatures.Manywell-knownsoftware,suchasPC-DOS,DBASEⅣwrittenbyClanguage.WiththeClanguageplussomeassemblylanguageroutines,willbettershowtheadvantagesoftheClanguage.
CProgrammingProgrammingtheuniversityscienceandengineeringstudentsabasiccourseonprogrammingabilitystudentshaveanextremelyimportantrole,useitasanentryintotheprogramminglanguageoftheworldisquiteappropriate.Thissystemisdevelopedinlinewiththeprincipleofutility,thesystemincludestwofunctionsformajor:
C-SystemClanguageonamachinetopracticeonthecomputertestsysteminthispaper,thebackgroundoftheentiresystemfromthedevelopmenttotheneedsanalysis,thespecificmethodtosolvetheproblem.Thespecificdesignofthesystemdescribedinthesystemfunctionofeachmoduleandspecificapplications,realizedinthesystemsection,giventheconcreterealizationofeachmoduleandthesteps,Inthefinal,giventhedetailedtestprocessandtestresults.Notethatthesystemcanrunandbeabletoachievethedesiredfunctionality
ThesystemuseVCtechnologyinallmajorfunctionalmodules,thedatabasemanagement,useoftheAccessdatabase.Friendlyinterfaceandeasymanagement.
Keywords:
CLanguageIntelligentPracticeExamSystem
引言................................................................................................................1
第1章系统分析..................................................................................................2
1.1项目开发背景........................................................................................2
1.2可行性分析..............................................................................................2
1.3主要工作与技术...................................................................................2
1.3.1主要工作..............................................................................................2
1.3.2涉及到的技术......................................................................................3
第2章系统设计...................................................................................................4
2.1系统目标...................................................................................................4
2.2系统功能结构...........................................................................................4
2.3开发环境...................................................................................................4
第3章数据库设计.................................................................................................5
3.1数据库分析...............................................................................................5
3.2数据库具体设计.......................................................................................9
3.2.1用户表.......................................................................................9
3.2.2错误题目表.......................................................................................10
3.2.3知识点表...........................................................................................10
3.3数据库物理设计.........................................................................................10
第4章系统功能的实现.........................................................................................7
4.1练习系统..................................................................................................15
第5章系统功能的测试和结果..............................................................................19
5.1系统的测试................................................................................................19
结论........................................................................................................................21
致谢........................................................................................................................21
附录A参考文献.....................................................................................................22
引言
学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。
如何以最小的代价学习并精通C语言呢?
所有初学者面临的第一个问题便是:
如何选择教材。
好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。
切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。
如果你看不懂,那你一定是缺失了某些必需基础知识。
此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。
把基础知识补充完毕再回头来学习,才会真正的事半功倍。
一个初学者同样也需要一个有效率的学习软件可以帮助自己提高程序设计的能力。
本系统正是为此目的而开发的。
C语言是七十年代创建的,它功能更强大且与ALGOL保持更连续的继承性,而ALGOL则是COBOL和FORTRAN的结构化继承者。
C语言被设计成一个比它的前辈更精巧、更简单的版本,它适于编写系统级的程序,比如操作系统。
在此之前,操作系统是使用汇编语言编写的,而且不可移植。
C语言是第一个使得系统级代码移植成为可能的编程语言。
C语言支持结构化编程,也就是说C的程序被编写成一些分离的函数调用的集合,这些调用是自上而下运行,而不像一个单独的集成块的代码使用GOTO语句控制流程。
正由于它的系统编程根源,将C和汇编语言进行结合是相当容易的。
函数调用接口非常简单,而且汇编语言指令还能内嵌到C代码中,所以,不需要连接独立的汇编模块。
将学习C语言作为编程入门还是很合适的。
因为它有益于编写小而快的程序。
很容易与汇编语言结合。
具有很高的标准化,因此其他平台上的各版本非常相似。
移植性很强,C语言的核心以及ANSI函数调用都具有移植性,但仅限于流程控制、内存管理和简单的文件处理。
其他的东西都跟平台有关。
第1章系统分析
1.1项目开发背景
通过调查,本系统所面向的客户对象情况如下:
✧此系统面向在校生和广大C语言自学者
✧使用者可以用此系统进行练习
✧使用者可以用此系统自动组卷考试
✧使用者可以组建自己的题库
✧系统高效,稳定
1.2可行性分析
现在已经迈入了信息时代,计算机正在改变着人们生活方式的方方面面。
若想让计算机更好的为人们服务,就必然需要更人性化的软件来控制计算机的特性。
越来越多的人开始接触电脑,更多的人接触到编程工作。
作为一个计算机专业的学生来说,更是需要学好编程这个技术。
本系统作为一个面向广大学习者的学习系统,有以下特点。
✧系统可以有效的帮助学习者快速掌握C语言知识点
✧提高学习者的实际操作能力
✧培养学习者程序设计能力
✧界面友好,操作简便
✧系统稳定,高效
1.3主要工作与技术
1.3.1主要工作
前期工作包括是人机交互界面设计和数据的存储抽象模型的设计。
在设计的过程中主要考虑了以下方面:
操作简便性,人性化的界面设计
本系统设计简洁,采用对话框的界面风格,给使用者良好的操作体验。
操作方便,用户在享受强大功能的同时不会因为烦杂的操作而苦恼。
数据的易于操作性
本系统的主要工作就是数据的存取,应该实现一种有效的数据设计。
数据的交互方面使用了得到微软公司强大技术支持的SQLServer2000数据库。
1.3.2涉及到的技术
本系统使用MFC框架开发。
开发环境为VisualStudio2005。
系统规模中等。
数据存储方面使用MicroSoft公司的SQLServer2000数据库。
这是一种得到了微软强大技术支持的数据库格式。
MFC类库对这种数据库也提供了很好的封装操作。
MFC全称MicrosoftFoundationClasses(微软基础类),实际上是微软提供的,用于在C++环境下编写应用程序的一个框架和引擎,它是WinAPI与C++的结合,它不只是一个功能单纯的界面开发系统,它提供的类绝大部分用来进行界面开发,windows作为一个提供功能强大的应用程序接口编程的操作系统,传统的win32开发(直接使用windows的接口函数API)对于程序员来说非常的困难,因为,API函数实在太多了,而且名称很乱,从零构架一个窗口动辄就是上百行的代码。
MFC是面向对象程序设计与Applicationframework的完美结合,他将传统的API进行了分类封装,并且创建了程序的一般框架。
第2章系统设计
系统设计要回答“怎么做”,即如何实现系统说明书规定的系统功能。
在这一阶段,要根据实际的技术条件,经济条件和社会条件确定系统的实施方案,即系统的物理模型。
本系统主要面向初学编程的学生和自学者,方便使用者快速掌握C语言的各个知识点,对知识点管理,组织和复习。
提高学习的效率。
2.1系统目标
本系统是针对初学编程的人的学习需求进行设计的,主要实现的系统功能:
智能练习系统,能够在练习的过程中根据出错题目自动找到相同的知识点的题目以加强知识点的集中练习。
智能考试系统则可以根据章节知识点分布,难度分布,题目数目等自动组卷考试。
主要实现如下目标:
✧选择练习,能够练习选择试题
✧填空练习,能够练习填空试题
✧查看错题,能够查看做错的题目
✧上机实习系统
✧系统运行稳定、安全可靠。
2.2系统功能结构
根据系统分析可知,本系统的基础功能就是数据库的管理和操作。
2.3开发环境
该系统使用的软件开发环境如下:
1.软件平台:
✧操作系统:
WindowsXPSP3
✧集成环境:
MicrosoftVisualstudio2005
✧数据库:
MicrosoftSQLServer2000
2.硬件平台:
✧CPU:
Inte64duocore2.2GHZ;
✧内存:
2048MB。
第3章数据库设计
知识点的管理如果没有数据库的支持是很难实现的。
事实上此系统最核心的功能就是数据的管理组织。
本章就对数据的组织进行说明和设计。
数据库设计(DatabaseDesign)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。
3.1数据库分析
虽然数据库管理的技术日新月异,但是对一个系统实现来说,永远应该使用简单有效的技术。
由于本系统设计采用的是MFC框架,MFCODBC技术已经可以满足本系统设计的需求。
而且Microsoft对SQLServer2000数据库的独立支持,所以数据库使用MicrosoftSQLServer2000可大大降低开发的复杂度。
3.2数据库的具体设计
用户表:
选择表:
填空表:
考生的选择答案表:
考生的填空答案表:
第4章系统功能的实现
系统功能的实现是本论文中的重中之重,主要介绍了几个主要功能模块的实现,现在开始介绍系统的实现过程。
4.1练习系统
编译系统后进入主界面,主界面的截图为:
练习系统分为两个部分:
一个是选择练习,一个是填空练习。
点击选择练习的按钮后出现的界面为:
此时你可以选择你要练习题目的难度。
如果选择简单的情况时出现下面的画面:
点击开始答题后:
上面的画面中要用到的代码为:
m_xiayiti.SetWindowTextW(L"
下一题"
);
CDatabasedb1;
CXuanzexuanze(&
db1);
a=a+1;
CStringstrSQL;
strSQL.Format(L"
select*fromxuanzewherenandu=%d"
m);
xuanze.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(a==1)
{
SetDlgItemText(IDC_TIMU,xuanze.m_xuanze_timu);
SetDlgItemText(IDC_A,xuanze.m_xuanxiang_a);
SetDlgItemText(IDC_B,xuanze.m_xuanxiang_b);
SetDlgItemText(IDC_C,xuanze.m_xuanxiang_c);
SetDlgItemText(IDC_D,xuanze.m_xiangxiang_d);
}
if(xuanze.IsEOF())
MessageBox(L"
完成答题"
if(a>
1)
{
for(inti=1;
i<
a;
i++)
{
xuanze.MoveNext();
}
SetDlgItemText(IDC_TIMU,xuanze.m_xuanze_timu);
CStringstrSQL;
strSQL.Format(L"
select*fromxuanzewhereanswer!
='
%c'
ANDxuanze_id=%d"
m_answer,(a-1));
CXuanzexuanze;
xuanze.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(xuanze.GetRecordCount()!
=0)
{
b=a-1;
CStringSql;
Sql.Format(L"
insertintouser_answer(id,xuanze_id,user_xuanze_answer)values(%d,%d,'
)"
c,b,m_answer);
//插入到数据库里
CDatabasem_database;
m_database.Open(NULL,0,0,L"
ODBC;
DSN=Exam_zhang;
"
m_database.ExecuteSQL(Sql);
//user_answer.Open(AFX_DB_USE_DEFAULT_TYPE,Sql);
m_database.Close();
MessageBox(_T("
您的选择已经保存"
));
c++;
//id
}
下面单击填空练习:
选择难度后出现的界面为:
此时用到的代码为:
strSQL.For