ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:46.75KB ,
资源ID:8561284      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8561284.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++课程设计学生信息管理系统.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++课程设计学生信息管理系统.docx

1、C+课程设计学生信息管理系统课程设计说明书题 目: 学生信息管理系统学 院: 信息工程学院班 级: 软件09-1 2011 年 1 月 21 日X X 大学课程设计(论文)任务书课程名称: 面向对象程序设计课程设计 学院: 信息工程学院 班级: 软件09-1 学生姓名: X X X _ 学号: 0000 指导教师: X X X 一、题目学生信息管理系统二、目的与意义面向对象程序设计课程设计课程设计是计算机科学与技术专业实践性环节之一,通过课程设计的综合训练可以使学生进一步理解和掌握面向对象程序设计课程的基本知识;掌握面向对象程序设计的思路和方法;基本具有利用面向对象的方法以及 C+的编程思想来

2、完成系统设计的能力。三、要求(包括原始数据、技术参数、设计要求、图纸量、工作量要求等) 1. 要求利用面向对象的方法以及C+的编程思想来完成系统的设计;2. 要求在设计的过程中,建立清晰的类层次;3. 在系统中至少要定义一个类,类中要有各自的属性和方法;4. 在系统的设计中,至少要用到面向对象的一种机制。四、工作内容、进度安排 1. 根据课程设计的要求,确定设计题目;(0.5天)2. 查找相关资料,进行应用程序总体结构、使用功能的设计;(0.5天)3. 进行应用程序的界面设计和源程序代码的编写;(2.5天)4. 设计说明书的撰写、答辩(1.5天)五、主要参考文献1C+语言程序设计(第三版),郑

3、莉,清华大学出版社,20042C+程序设计教程,钱能主编,清华大学出版社,1999.43C+程序设计课程设计,刘振安,机械工业出版社,2004.8审核意见系(教研室)主任(签字) 指导教师下达时间 2011年 1月 17日指导教师签字:_目录前言 1第一章 系统概述 21.1 功能简介 21.2 设计思路 2第二章 系统功能的分析和设计 32.1 初始录入功能 32.2 添加函数 32.3 删除函数 32.4 修改函数 32.5 查询函数 42.5.1 按学号查询 42.5.2 按姓名查询 42.6 显示函数 42.7 退出系统 4第三章 调试及运行结果 53.1 主菜单 53.2 显示功能

4、53.3 增加功能 53.4 删除功能 63.5 修改功能 63.6 查询功能 6第四章 总结 84.1 遇到的问题及解决方法 84.2 收获和体会 8前言学生信息管理系统,是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统。 它是一个教育单位不可缺少的部分,它的内容对于学校管理者来说是至关重要的,能有效的帮助学校和老师掌握学生的情况。在传统模式下利用人工进行学生信息管理,存在着较多的缺点,如:效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。诸如这些情况,令学校管理者对学生的信息管理带来了很大困难,严重影响了教育工作者的工作效率。随着科学技术

5、的不断提高,使用日趋成熟的计算机技术来代替传统的人工模式,来实现学生信息的现代化管理,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率,也是学校实现科学化、正规化管理的重要条件。因此,开发这样一套管理软件成为很有必要的事情。 第一章 系统概述1.1 功能简介本软件是一个简单的学校学生信息管理系统,软件窗口为DOS页面。学生信息管理系统的功能主

6、要是实现学校学生的信息化管理。通过学生信息管理系统,教学管理人员可以实现对学生信息的增加、删除、修改和查询等操作。本系统最大的优点就是操作简便快捷等。1.2 设计思路将学生信息定义为一个student类,在类中包含私有数据成员int num、string name、string sex、string politic、string address,分别表示学号、姓名、性别、政治面貌、家庭住址。公有成员函数包括set( ) ,add( ) ,del( ) ,change( ) ,research( ) ,show( ) ,分别用来实现对学生信息的数据初始录入、增加数据、删除数据、修改数据、查询数据

7、、显示所有数据功能。然后定义了一个menu( ) 菜单函数,使功能菜单显示在运行窗口以提示用户如何进行操作。主函数是一个程序必不可少的,在主函数中,使用一个switch语句来选择调用主菜单中的各个功能函数。 第二章 系统功能的分析和设计在本章中,主要是介绍各个功能函数的设计思路和实现方法。2.1 初始录入功能此函数实现的功能主要是,对学生信息的初始化录入功能,在初始时,文件中没有任何数据,可以通过次函数输入任意个学生的信息,在输入时通过一个if条件语句来实现控制循环,当输入的姓名是“0”时,使用break语句就跳出循环,即停止输入学生信息。在此函数中使用文件处理的方式,先建立一个文件输出流对象

8、,以写的方式打开f1.txt文件,使输入的学生信息都写入文件。2.2 添加函数 此函数实现的功能主要是,添加一个学生的信息,也就是说调用一次这个函数只能添加一个学生的信息。在此函数中也使用文件处理的方式,但使用的是以追加的方式打开文件,使输入的学生信息写在文件里原有信息的后面。2.3 删除函数 此函数实现的功能主要是,删除一个学生的信息。在此函数中,先以读的方式打开文件,读出文件里的信息在显示在屏幕上,用户再根据提示信息输入想要删除第几个人的信息,关闭文件。再以写的方式打开文件,以一个if条件语句控制,再重新将学生信息写入文件(除了打算删除的那个学生的信息),由于是以写的方式打开的文件,所以文

9、件里原有的输入就都没有了,存入的新的数据。2.4 修改函数 此函数实现的功能主要是,修改一个学生的信息。此函数的设计方法和删除函数的设计思想相类似,应用的思想都是将学生信息重新写入文件的方法,将原有数据覆盖。2.5 查询函数 在查询功能中,可以按多条件查询,本系统分为两个查询条件,即按学号查询和按姓名查询。使用if语句来选择查询条件。 2.5.1 按学号查询 根据提示信息输入学号后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的学号和输入的学号相等,则输出该学生的信息,由于学生的学号是唯一固定的,所以并使用break语句跳出循环。 当无查询结果时,会输出一条提示信息“无此人信息

10、!” 。 2.5.2 按姓名查询 根据提示信息输入姓名后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的姓名和输入的姓名一样,则输出该学生的信息,由于学生的姓名有可能重复出现,所以不能使用break语句跳出循环,应该从第一个学生开始检索直到最后一名学生。 当无查询结果时,会输出一条提示信息“无此人信息!” 。2.6 显示函数 此函数实现的功能主要是,显示所有学生的信息。先是从文件中读取学生信息,然后在输出到显示窗口中。用一个for循环语句,来把所有学生的信息都输出。2.7 退出系统 当输入“0”时,就能退出系统,这是通过while语句来控制实现的。第三章 调试及运行结果3.1

11、主菜单主菜单显示如下:图3-1 主菜单3.2 显示功能按6则显示全部信息,如图3-2:图3-2 显示功能3.3 增加功能进入主菜单后选择2,进入增加功能,按要求输入学生信息,增加数据前显示如图3-2:增加后显示如图3-3:图3-3 增加后3.4 删除功能进入主菜单后选择3,进入删除功能,按要求输入要删除的学生信息,删除数据前显示如图3-3:删除数据后显示如图3-4:图3-4 删除后3.5 修改功能进入主菜单后选择4,进入修改功能,按要求输入要修改的学生信息,修改数据前显示如图3-4:修改后如图3-5:图3-5 修改后3.6 查询功能进入主菜单后选择5,进入查询功能,如图3-6:图3-6选择查询

12、条件按学号查询如图3-7:按姓名查询如图3-8: 图3-7 按学好查询:图3-8按姓名查询第四章 总结4.1 遇到的问题及解决方法 首先,是对文件的处理不够熟练,通过看书和搜集一些资料解决了这个问题;其次,是在编写程序的过程中出现了一些语法错误,后通过调试逐一解决。4.2 收获和体会此次c+面向对象课程设计,在指导教师的精心教导下,我们学会了如何用C+编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。程序实现上,设计了简单的菜单界面,将各个功能集中出现在主菜单中,便于调用。根据C+课程所学的概念、理论和方法,按照C+程序设计的基本

13、步骤,设计出一个适当规模的程序;进一步加深对C+语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不断改进,才能更好提高编程能力。参考文献1 C+语言程序设计(第三版),郑莉,清华大学出版社,2004 2C+语言程序设计案例教程,郑莉,清华大学出版社,20053C+程序设计教程,钱能主编,清华大学出版社,1999.4 4C+程序设计,谭浩强,清华大学出版社,20045C+程序设计实践指导,谭浩强,清华大学出版社,20056C+程序设计课程设计,刘振安,机械工业出版社,200

14、4.8 附录:程序代码#include#include#include#includeusing namespace std;#define M 200 /可以存信息总量int N=0; /学生总量class studentpublic: student(); void set(); /初始化信息,第一次对信息的录入 void add(); /添加学生信息 void del(); /删除某学生信息 void change(); /修改某学生信息 void search(); /查询某学生信息 void display(); /显示全部学生信息private: static int num; s

15、tring name,sex,politic,address;int student:num=110;student:student() void student:set() int i; string setname,setsex,setpolitic,setaddress; ofstream outfile; outfile.open(f1.txt,ios:out); /-打开文件- if(!outfile) cerr open errorendl; exit(1); /-依次录入相应个数的学生信息- for(i=0;iM;i+) cout当姓名输入为0时,停止输入!endl; cout请

16、输入姓名:setname; name=setname; if(setname=0) break; if(setname!=0) N+; num+; outfilenum ; outfilesetname ; cout请输入性别:setsex; sex=setsex; outfilesetsex ; cout请输入政治面貌:setpolitic; politic=setpolitic; outfilesetpolitic ; cout请输入家庭住址:setaddress; address=setaddress; outfilesetaddressendl; outfile.close(); /-

17、关闭文件-void student:add() string addname,addsex,addpolitic,addaddress; /-以追加的方式录入信息,直接将信息追加到以前文件的末尾- ofstream outfile(f1.txt,ios:app); if(!outfile) cerr open errorendl; exit(1); N=N+1;/-依次输入相应的数据,并且追加到之前的文件中去- cout请输入您要添加的数据endl; num+; outfilenum ; cout请输入姓名:addname; outfileaddname ; cout请输入性别:addsex;

18、 outfileaddsex ; cout请输入政治面貌:addpolitic; outfileaddpolitic ; cout请输入家庭住址:addaddress; outfileaddaddressendl; outfile.close(); cout已添加成功!endl;void student:del() int k,i; int numM; string nameM,sexM,politicM,addressM; ifstream infile(f1.txt,ios:in); if(!infile) cerr open errorendl; exit(1); for(i=0;iN;

19、i+) coutnumi; coutsetw(9)namei; coutsetw(9)sexi; coutsetw(9)politici; coutsetw(9)addressi; coutsetw(9)addressiendl; cout你想删除第几个?k; k=k-1; infile.close(); ofstream outfile(f1.txt,ios:out); if(!outfile) cerr open errorendl; exit(1); /退出程序 /-将数组存取的信息输出到文件中去- for(i=0;iN;i+) if(i!=k) outfilenumi ; outfil

20、enamei ; outfilesexi ; outfilepolitici ; outfileaddressi endl; outfile.close(); N=N-1; cout已删除成功!endl;void student:change() int i,k; int numM; string nameM,sexM,politicM,addressM; ifstream infile(f1.txt,ios:in); if(!infile) cerr open errorendl; exit(1); for(i=0;iN;i+) coutnumi; coutsetw(9)namei; cou

21、tsetw(9)sexi; coutsetw(9)politici; coutsetw(9)addressi; coutsetw(9)addressiendl; infile.close(); ofstream outfile(f1.txt,ios:out); if(!outfile) cerr open errorendl; exit(1); cout你想修改第几个数据?k; k=k-1; cout请输入新的数据:endl; cout请输入姓名:namek; cout请输入性别:sexk; cout请输入政治面貌:politick; cout请输入家庭住址:addressk; for(i=0

22、;iN;i+) outfilenumi ; outfilenamei ; outfilesexi ; outfilepolitici ; outfileaddressi endl; outfile.close(); cout已修改成功!endl;void student:search() int i,n,w=0,numM,aM;char ch; string searchname,nameM,sexM,politicM,addressM,bM4; couta.按学号查找 b.按姓名查找endl; ifstream infile(f1.txt,ios:in); if(!infile) cerr

23、open errorendl; exit(1); for(i=0;inumi;ai=numi; infilenamei;bi0=namei; infilesexi;bi1=sexi; infilepolitici;bi2=politici; infileaddressi;bi3=addressi; cout请输入a或者b!ch; if(ch=a) cout请输入学号!n; for(i=0;iN;i+) if(ai=n) w=1; cout 学号 姓名 性别 政治面貌 家庭住址endl; cout ; coutsetw(9)ai; coutsetw(9)bi0; coutsetw(9)bi1;

24、coutsetw(9)bi2; coutsetw(9)bi3endl; if(w=0) cout无此人信息!endl; else if(ch=b) cout请输入姓名!searchname; for(i=0;iN;i+) if(namei=searchname) w=1; cout 学号 姓名 性别 政治面貌 家庭住址endl; cout ; coutsetw(9)ai; coutsetw(9)bi0; coutsetw(9)bi1; coutsetw(9)bi2; coutsetw(9)bi3endl; if(w=0) cout无此人信息!endl; else cout没有此选项!endl;void student:display() int k,num; string name,sex,politic,address; ifstream infile(f1.txt,ios:in); if(!infile) cerr open errorendl; exit(1); cout 学号 姓名 性别 政治面貌 家庭住址endl; for(k=0;kN;k+) coutnum; coutsetw(9)name; coutsetw(9)sex; coutsetw(9)politic; coutsetw(9)address; coutsetw(9)ad

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1