您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 13学生信息管理系统
-I-江苏科技大学计算机科学与工程学院系统设计设计题目:学生信息管理系统学生学号:1341901129专业班级:计算机01学生姓名:张俊伟摘要学生信息管理系统是一个对学生随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。这个学生信息管理系统用VisualC++来设计界面,采用面向对象的语言编程,实现对学生信息的基本管理,包括学生信息,班级信息,课程信息,成绩信息的添加,修改和查询以及密码等功能。该系统充分考虑用户的操作简便性,实现快捷操作如何调程序也非常重要,通过这个程序可以学习到以前调试短程序没有的的经验。它有以下几个功能:(1):系统设置,包括创建用户,学生或管理员登陆,修改密码,学生信息查询。(2)信息设置,可以添加新学生信息,修改信息。(3)学生信息的查看和管理。可以查看学生的学号,姓名,性别,年龄,专业,班级,所选课程,成绩查看。(4)学生信息查询。可按学号,姓名,还有其他各种条件查询,方便实用。(5)程序的输入。键盘输入。包括用户名,密码,各种学生信息。(6)程序的输出。输出到显示器上。(7)数据的测试。修改学生信息时,返回修改成功,数据运行无错误,程序没问题。根据以上需要实现的功能我们可以用到指针,类的定义和运用,结构体等工具。在做这次设计之前我们应该先要找到我们需要的各个函数以及它们的用法我们也应该做到心里有数,我们应该做好相关的准备工作。这次设计以VisualC++6.0作为系统前台应用程序开发工具,编写好程序,尽可能做到以上的几种功能。这次课程设计应该是一次学习的知识的一次好的检验情况。同时这也让我们所学习的知识得到了加强和巩固。-1-一课题背景这次学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生信息管理系统的多种功能,具有较强的综合性。1.1设计背景,目的和意义这次试验是以VC++6.0的为工作环境,这是一个关于学生信息管理系统的试验,其中包括了密码的设定以及修改的问题,学生信息添加的功能,学生信息查找的功能。这个管理系统是一次比较符合现代的一种管理系统,我们要从中得到我们所要建立的信息并成功获得我们存入的信息。这要求我们既可以储存也可以读取,这很符合我们现代化的管理特点。我们需要通过这个工作环境来完成这些功能。因为一次实验的过程也是我们的一次学习的过程。这次的学生信息管理系统的实验是一次比较综合的一次实验的过程。尤其是在其中的设计过程中我们需要大量的函数和很多的关键字以及很多的头文件中的一些函数。同时我们在设计的过程中有很多的功能需要去实现。比如说学生信息添加的功能。我们要用到指针等的一些工具。我们应该在这次的实验过程中结合自己所学的知识以及我们在学习的过程中遇到的难题可以从老师那里得到更多的帮助。我们同时也可以学习到新的知识。我们需要从中学会利用我们所学习的知识来运用到实际中来解决现实中的问题,这是一次不断了解现实生活中的实例。这样我们面对现实中的问题是我们并不会束手无策。这是一次学习实践的好机会,我们应该借这个机会来学会如何处理现实中的各种问题,同时我们也可以了解到现实中的具体情况。在实验的过程中,可能会遇到一些困难。例如我们程序的正常连接情况和语法上的错误或逻辑上的错误。这些都是我们在实验过程中经常遇到的问题。我们需要自己独立的去思考这些问题或请教指导老师来解决。我相信经过这次的课程设计我们会对相关的知识有了进一步的加强。我们既可以对于上学期的C语言的知识重新温习,还可以对C++作更多的了解。1.2基本理论依据和主要工作内容实验的基本要求以及学生信息管理系统的工作内容如下:1、学生信息的构成:学号,姓名,性别,年龄,班级,专业,所修课程,所修课程的成绩。2、系统管理功能:(三大块)第一块:登录模块及权限设置模块(1)管理员/学生登录模块:设置/修改密码;不同类型人员的权限设置(管理员可以修改信息,学生只能查询信息)第二块:管理员模块(2)面向管理员的学生信息管理模块:加入学生信息;根据各种特征方便的查找学生信息;学生信息的管理;(3)面向管理员的课程及成绩管理模块:各学年所修课程及其成绩管理。第三块:学生模块(4)面向学生的学生信息查询模块:根据各种特征方便的查找学生信息;(5)面向学生的课程及成绩查询模块:根据各种特征方便的查找所修课程及成绩;我们可以看到在登陆模块中建立一个选择的函数,为不同的登陆身份提供不同的服务界面,在这个模块中我们需要建立一个数组并且通过输入的字符与程序中设定的进行比较从而进入不同的界面,在这里我们需要用到Strcmp函数的相关功能。同时在对待学生信息的构成的时候我们需要定义一个Students类来学号,姓名,性别,年龄,班级,专业,所修课程,所修课程的成绩等成员。加入学生信息的时候提供一个Add函数来处理。同时在查找的过程中提供一个Find函数来处理而且在这个函数中我们需要调用循环语句和判断语句。在这个程序的设计过程中如何使自己的密码在屏幕上显示的是“*”这个问题是比较难的。我们要用到_getch()这样的一个函数,我们需要了解这个函数的正确用法。同时贯穿整个程序的就是我们需要很好的运用文件流的操作。我们应该建立一个文件来存放我们写进去的内容。我们需要不断的进行文件的存入和读取操作。二设计简介及设计方案论述2.1设计简介在设计学生管理系统的时候,首先我们可以看到这次的课程设计的基本功能有:登录时的设置和密码的相关问题;同时还有学生信息的添加查找和信息的保存,同时在学生信息过程中我们也要对查找过程中用不同方式来进行查找功能。这样我们在设计过程可以用类的相关作用定义一个类来存放这些数据成员同时可以运用_getch()这个函数来进行密码的不回显的功能。同时还有选择语句的相关使用问题。而纵观整个程序我们需要运用文件流的操作来控制整个程序,我们需要运用文件流来进行数据的保存的问题。在整个设计的过程中我们可以一部分一部分的对相关功能进行处理,我们可以建立不同的头文件和源文件来实现它们,将所需实现的功能来进行很好的分类,这样我们就可以很方便的对具体的功能部分有很好的了解。这样更便于我们去编写程序。2.2设计方案整个学生管理系统需要实现很多的功能,其中有类的相关使用情况也有特殊函数的具体用法,同时我们必须知道我们所需要的函数中它们的具体功能和我们需要提供的系统自带的头文件。例如#includeconio.h这个头文件就是对于_getch()这个函数的一个很好的说明,因为这些函数是不需要我们定义的同时却又能够为我们直接使用的函数。对于类似这样的函数我们需要提供这些函数的头文件。因此经过一些相关的思考后我认为我们可以建立两个头文件和四个源文件来存放整个程序。而在整个程序开始的时候我们可以先来对整个程序构造一个简单的程序执行时的框架。我们不妨利用下面这个图来看一下程序的相关执行情况。程序流程图如下:从上面的视图中我们可以看到在整个程序设计的过程中,我们可以按照上面的图来进行程序相关功能的实现。首先是进行学生信息的下载过程。这就要求我们在程序的运用文件流的知识来建立一个文件。用它来存放相关的学生信息,便于我们可以获得。然后我们打印出我们刚开始的时候需要进行身份的验证信息。登陆身份包括学生和管理员身份。在这里可以运用strcmp函数来把我们从键盘上输入的信息来进行比较以方便确认登陆者的身份。对于学生身份来说我们不允许他们来对学生的信息进行修改而只对错学生开始下载学生信息登陆界面选择登陆身分输入管理员密码打印学生功能表验证密码?打印管理员功能表选择功能X选择功能X实现功能X实现功能X程序流程图能对学生的信息进行查找的功能。进入学生信息的功能表时我们可以利用选择语句来控制学生所想要的查找服务,例如,按姓名查找以及按学号查找的功能。而当进入管理员的窗口时需要管理员输入密码,首先我们必须设定好自己的密码。在设定好密码后,当输入密码后需要将这两个密码进行比较,只有当密码输入正确的时候,才能进行管理员的功能列表。而在密码的问题上我们需要用户在输入密码的时候我们需要在屏幕上显示的不是现实中的密码而是“****”之类的符号。这样可以使密码不会被泄露出去。在这里我们可以运用_getch()这个函数来实现所输入的以不回显的方式显示在屏幕上。然后当管理员进入之后会出现管理员所需要处理的相关功能。例如,查找学生信息并且修改学生信息。而接下来的功能实现过程应该与学生身份进入后的相关操作是类似的。上述过程是对整个设计过程的一些简介和论述。三详细设计3.1详细设计过程中头文件的情况首先在第一个头文件中定义一个类来存放相关的数据如:unsignedintid;charname[80];chargender;unsignedintage;charClass[80];charprofession[100];上面的数据成员是用来声明学生的学号,姓名,性别,年龄和班级等相关信息。其次,在另外一个头文件中可以存放程序中实现各种功能的函数。例如这些函数可以是:private:intFind(unsignedintid);intFind(char*name);voidUpdate(unsignedintid);voidUpdate(char*name);voidAdd();voidSort();voidSave();voidLoad();voiddel(unsignedintid);voiddel(char*name);上述这些不同的函数是用来实现不同的功能。例如Add()函数是用来实现添加学生信息的功能的函数。3.2源文件的相关情况源文件是用来存放实现函数的各种功能的程序。首先在刚开始进入界面的时候需要显示不同的身份去登陆:cout**************简易学生信息管理系统**************endl;coutsetfill('');coutsetw(14)a、管理员endl;coutsetw(14)b、学生endl;cout************************************************endl;cout请输入功能序号选择登录身份:endl;出现这个界面后需要登陆者选择适合自己的身份去登陆。如果是学生身份的话,那么对于学生来说他只能进行查找的功能,我们需要反馈一个信息来显示他所拥有的权限。程序如下所示:cout**************简易学生信息管理系统**************endl;coutsetfill('');cout请选择您需要的操作:endl;coutsetw(14)0、退出整个系统endl;coutsetw(14)1、查找学生信息:已知学号endl;coutsetw(14)2、查找学生信息:已知姓名endl;coutsetw(14)3、对学生成绩排序endl;coutsetw(14)4、从文件中读入学生信息endl;cout************************************************endl;出现这个界面后登陆者需要对其所想要的功能进行选择。登陆者选择的功能不同,屏幕上所出现的信息也将会是不同的。而当登陆者选择的身份是管理员时,那么我们需要登陆者输入管理员密码,只有密码正确时管理员才能进入界面进行相关的操作。当管理员输入密码时而不显示真正的数字而是以不回显的方式来显示却只是输出“*”的功能需要用_getch()这个函数来实现。该程序如下所示:staticcharc[50];inti=0;charch;while(1){ch=_getch();if(ch=='\r')break;c[i++]=ch;_putch('*');}而在定义这个函数时需要说明#incl
本文标题:13学生信息管理系统
链接地址:https://www.777doc.com/doc-4232429 .html