1、学生选课管理系统软件 课程设计报告 作者: 日期:2 个人收集整理 勿做商业用途山东交通学院面向对象课程设计学生选课管理系统软件院(系)别 信息工程系 班 级 计算091 学 号 xxxxxxxxxxxx 姓 名 xxxxx 指导教师 xxxxx 时 间 2011-04-05-2011-0417 课 程 设 计 任 务 书题 目 学生选课管理系统 系 (部) 信息工程系 专 业 计算机 班 级 计算091 学生姓名 xxxxx 学 号 xxxxx 0 4 月 05日至 04 月 17 日 共 2 周指导教师(签字) 系 主 任(签字) 年 月 日一、设计内容及要求在VC中编写代码通过连接数据库
2、来实现对学生选课的管理,一共分为四个模块,分别为学生、教师、成绩、选课等模块.具体步骤功能: (1)实现VC和数据库的连接;(2)在数据库中创建表的基本框架并输入相应的数据;(3)在数据库中通过查询语句创建存储过程以及特殊的触发器; (4)在VC中编写代码,实现用VC来显示数据库中的数据; (5)通过编写的代码能实现从VC中删除、修改、添加等功能;二、设计原始资料实现VC与数据库的连接,在数据库中输入原始数据,而能通过vc对数据库中的数据进行添加、修改和删除等功能,然而这过程还的用到存储过程以及触发器等。三、设计完成后提交的文件和图表1计算说明书部分【1】课程设计报告(3000-5000字),
3、纸质打印稿及电子版(1)需求分析(功能模块层次图)(2)系统设计(包括详细设计和界面设计)(3)代码设计(主要功能函数)(4)测试记录(测试各项功能的正确性、容错性)(5)课程设计总结【2】系统程序演示。【3】课程设计任务书.数据库设计分析系统主要用于学校学生选课信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改 、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统本系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修
4、改 、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统。本系统主要包括学生信息查询、教务信息维护和学生选课三部分。其功能主要有:有关学籍等信息的输入,包括输入学生基本信息、所在班级、所学课程和成绩等。学生信息的查询,包括查询学生基本信息、所在班级、已学课程和成绩等。学生信息的修改.管理信息的输入,包括输入班级设置、年级信息等。管理信息的查询。6.学生课程的设置和修改2图纸部分:程序流程图备注:以上的添加、删除、修改等功能都是对数据库中的数据直接进行添加、删除、修改,而显示的数据都是数据库中的数据。四、进程安排4月05日,熟悉VC的环境. 4月06日,熟悉数据库用不同方式添加
5、数据,创建表的功能。 4月07日,在数据库中创建表,并在表中添加数据。 4月08日,完成VC和数据库的连接。 4月09日至4月17日,编写代码,修改代码,编辑对话框等一系列的工作直至完成工作。.五、主要参考资料1.Microsoft SQL Server 2005 数据库开发与实现2. .计算机数据库系统知识3.数据库管理系统4.数据库连接5. 谭浩强.C程序设计。北京:清华大学出版社,20096。 何光明。C语言程序设计与应用开发。北京:清华大学出版社,2006成 绩 评 定 表口试(答辩)成绩报告成绩总评成绩abstract In order to improve everyones ha
6、nds-on time ability and the content of the later work have certain knowledge, at the same time for everybody in a database of a learning inspection study; School for everybody arranged for a twoweek course design, make everyone working environment to the database, and understand more about curriculu
7、m design is several classmates to do the same projects, the regulation of the peoples operation, is later programming work strengthened the personal programming specifications。文档为个人收集整理,来源于网络个人收集整理,勿做商业用途This document on the database and VC briefly simply introduces, in the form of using graphic com
8、bined with written by the students elective course system in detail。Students elective course system is a more perfect record course information, her students can add students information, new information, show the modified students of information and inquires the student students of information, etc
9、。 For the record students information provides convenient records.Key words: database, VC, source program, students course selection目 录1课程设计概述11。1学生选课管理系统软件功能概述11。2Visual C+6。0概述12学生选课管理系统软件总体设计12.1学生选课管理系统软件总体设计思想12.2总体设计流程图33学生选课管理系统软件详细设计34程序测试44.1选课界面44.2教室界面54.3选课界面64.4学生信息实现74。5教师信息界面94。6退出界面1
10、0设计体会及今后的改进意见11参考文献12摘要随着社会经济的快速发展,学校的教学质量也在不断的提高,大学期间有很多的公共选修课,我们现在做学生选课系统,希望对学生的选课以及管理提供更容易的方法,选课系统做好之后,学生可以再查看和更改,管理起来也比较方便,摆脱学生以往的课堂报名,也就可以在网上进行选课。鉴于它的重要性,这就迫切需要研制开发一款功能强大,操作简单,具有人性化的学生选课管理系统。该系统包括以下五个模块:选课模块,课程模块,教室模块,学生信息模块,教师信息模块。 关键词:查询,选课,用户,录入。 1 课程设计概述1.1 学生选课管理系统软件功能概述Visual C+是微软公司的重要产品
11、之一, 是一种功能强大行之有效的可视化编程工具。它提供了MFC类库,使用户可以方便的开发自己想实现的功能。Visual C+6.0的主要特点:(1)自动化和宏功能.(2)可以灵活地定制工具栏和菜单。(3)可以直接运行和调试程序,还可以使用宏语言来自动操作调试器。(4)支持Internet连接。(5)一个新的便捷的项目系统可以允许一个工作区内包含多个不同的项目类型.(6)在工作区内可以包含多个并列的工程文件。(7)可以在对话框中使用WizardBar将程序同可视化元素联系起来.(8)Find in File命令支持两个独立的输出窗格,可以保存上一次搜索的结果.这些新特性可以更好地利用Visual
12、 C+开发工具进行Windows应用程序开发.1.2 Visual C+6。0概述2 学生选课管理系统总体设计2.1 学生选课管理系统总体设计思想学生选课管理系统软件的功能为将学生的选课信息与教师信息等联系起来,便于学生的选课。学生选课管理系统软件的功能模块有:(1)提供五个界面,方便用户对程序个功能进行选择,选择要实现的功能按enter键进入该功能。(2)对于程序代码的填写,我们可以参考课本或者向老师请教,熟悉VC环境和数据库的相关知识.(3)写代码并调试程序的时候,要时刻与学生的选课信息联系。例如add按钮代码的填写,void MyDialog4::OnButtonAdd() / TODO
13、: Add your control notification handler code hereUpdateData(TRUE);CString strTmp;int iCount = m_List。GetItemCount();strTmp。Format(%s”,m_strtno);m_List.InsertItem(iCount,strTmp);strTmp。Format(%s,m_strtname);m_List。SetItemText(iCount,1,strTmp);strTmp.Format(”s,m_strtsex);m_List。SetItemText(iCount,2,st
14、rTmp);strTmp。Format(i,m_strtage);m_List.SetItemText(iCount,3,strTmp);strTmp。Format(”%s”,m_strtdegree);m_List。SetItemText(iCount,4,strTmp);strTmp。Format(”s”,m_strtpos);m_List.SetItemText(iCount,5,strTmp);strTmp。Format(%s,m_strtschool);m_List。SetItemText(iCount,6,strTmp);strTmp.Format(”%s”,m_strthealt
15、h);m_List。SetItemText(iCount,7,strTmp);我们要把所有的成员变量考虑进去,在运行的时候要注意变量之间的关系。然后对成员函数进行定义。为了方便用户使用,我们要考虑多种情况,按钮的添加也要有规律,最后阶段,设置一个void quit()退出函数,将关闭程序。将这些函数均放在系统文件.cpp中.最后定义main()函数,利用函数调用,实现程序的各种功能。将其放在系统文件main.cpp。程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。2.2 总体设计流程图图212 总体设计流程3 选课系统详细设计该系统包括五个模块:选课表,课程表,教室表,学生信息
16、表,教师信息表,我希望在每个表都加上一些比较通俗一点的按钮,比如增加,删除,显示,下张表的显示等按钮,最重要的是要把VC与数据库联系起来,在调试阶段对数据的增加相应的在数据库中也有所变化,代码填写过程可以与同学商量,或者向老师请教。4 程序测试4.1 选课界面图311 选课调试界面图312 选课最终运行界面如上图所示,该程序为用户提供选课界面,用户可以对程序的各种功能进行选择,方便用户使用。 4.2 教室界面图321 教室调试界面如上图所示,该界面是在写程序过程中出现的调试界面,有增加,删除,返回,显示,显示下一张等按钮.图341教室运行界面图342 清屏后程序运行界面如上图所示,该功能将实现
17、程序运行界面的清屏。4。3课程界面图351 课程调试界面图352 课程运行界面如上图所示,该功能将显示一些有关此函数的版本信息,帮助用户了解该函数。.4.4学生信息界面图361 学生信息调试界面图362 学生信息运行界面如上图所示,我们可以在此界面填写数据,数据也会相应的在数据库中有所改变。4。5教师信息界面图351教师信息调试界面 图352教师信息运行界面如上图所示,该图显示的是程序的最后一个窗口,按着EXIT键整个程序就退出,代表程序的完成.设计体会及今后的改进意见为了提高我们的实践能力,让我们学以致用,能灵活运用所学的知识进行再创造,学校特安排我们进行为期二周的课程设计实习,并安排了指导
18、老师帮助辅导,让我们在规范化、严谨化、实用化上面有了很大进展。在此次学生选课管理系统程序开发过程中,有很多东西值得我们思考并总结.开发过程大体可分为以下几个步骤:(1)思考总体设计方案:总体结构和模块外部设计,功能分配。思考要实现整个程序大体需要的几个模块和其中用到的Visual C+等语言基本操作符、语句等.(2)大体上画出总体设计方案流程图:用流程图的形式展现你的基本编程思想.(3)流程图具体化:即将流程图中的几大模块的具体实现思考清楚,可以用流程图的形式展现并想好实现的关键代码。(4)编辑程序代码:这是一个至关重要复杂而且需要反复修改的环节,在此环节中你将发现总体设计和模块思想会存在很多
19、问题,需不断改进如何实现各函数功能,达到预期效果也将是一项繁复的工作。(5)代码的调试:在Visual C+6。0环境下输入代码并进行调试和正确运行。在调试过程中会遇到很多需要精化的地方,需要十足的耐心与细心,不断改进完善程序.(6)最后修饰:程序可以正确运行之后,再不影响程序功能的情况下,运用各种辅助性符号,使界面更加美观漂亮,操作更人性化增强程序的新意与可行性.通过这次课程设计,使我们更加熟悉的掌握了Visual C+语言和数据库的运用。帮助我们熟悉了更多Visual C+语言和数据库的功能,提高了我们的动手能力,学到了许多解决实际问题的宝贵经验同时也挖掘出了我们潜在的能力,使我们对自己更
20、有自信,对编程也更有兴趣。我相信,只要努力、勤奋、坚持不懈,就没有什么做不到的事,不能还没开始就退缩,要勇于拼搏,敢于创新.参考文献1 马安鹏。Visual C+程序设计导学。北京:清华大学出版社,20022 电子书籍. Visual C+技术内幕(第四版).网址:3 Beck Zaratian。Microsoft Visual Visual C+ 6.0程序员指南.希望图书创作室译.北京:北京希望电脑公司出品,19984Richard C。Leinecker,Tom Archer. Visual C+ 6 宝典。张艳,张谦译.北京:电子工业出版社,19995 李强,贾云霞. Visual C+项目开发实践。北京:中国铁道出版社,20046 郑莉,董渊,张瑞丰.C+语言程序设计.2003.7 H。M。Deitel,P。J.Deitel. Small C+ How to Program。2006。11