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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

学生信息管理系统报告.docx

1、学生信息管理系统报告 PINGDINGSHAN UNIVERSITY基于Web的Java开发设计项目实践题 目: 基于C+语言的学生信息管理系统开发 院 (系): 软件学院 专业年级: 软件工程 2010级 姓 名: 张洪亮 学 号: 101530215 2012年6月10日前言学生信息管理系统,是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统。 它是一个教育单位不可缺少的部分,它的内容对于学校管理者来说是至关重要的,能有效的帮助学校和老师掌握学生的情况。在传统模式下利用人工进行学生信息管理,存在着较多的缺点,如:效率底,保密性差,时间一长将产生大量的文件和数据,更不便

2、于查找,更新,维护等。诸如这些情况,令学校管理者对学生的信息管理带来了很大困难,严重影响了教育工作者的工作效率。随着科学技术的不断提高,使用日趋成熟的计算机技术来代替传统的人工模式,来实现学生信息的现代化管理,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率,也是学校实现科学化、正规化管理的重要条件。因此,开发这样一套管理软件成为很有必要的事

3、情。一、系统概述1.1 功能简介本软件是一个简单的学校学生信息管理系统,软件窗口为DOS页面。学生信息管理系统的功能主要是实现学校学生的信息化管理。通过学生信息管理系统,教学管理人员可以实现对学生信息的增加、删除、修改和查询等操作。本系统最大的优点就是操作简便快捷等。1.2 设计思路将学生信息定义为一个students结构体,在结构体中包含成员i nt xuehao;char name8;char xingbie4;char nianji20;char dizhi80;char dianhua16;float yuwen;float shuxue;float yingyu;float zong

4、fen;,分别表示学号、姓名、性别、年级、家庭住址、联系电话。公有成员函数包括bulidline(),chaxun(stu*head) , insert(stu *head,stu *std) , xiugai(stu *head) , shanchu(stu *head) , liulan(stu *head), paixu(stu *head),xiufu(stu *head),main(),分别用来实现对学生信息的数据初始录入、增加数据、删除数据、修改数据、查询数据、显示所有数据等功能。主函数是一个程序必不可少的,在主函数中,使用一个switch语句来选择调用主菜单中的各个功能函数。第二

5、章 系统功能的分析和设计在本章中,主要是介绍各个功能函数的设计思路和实现方法。2.1 初始录入功能此函数实现的功能主要是,对学生信息的初始化录入功能,在初始时,文件中没有任何数据,可以通过次函数输入任意个学生的信息,在输入时通过一个if条件语句来实现控制循环,当输入的姓名是“0”时,使用break语句就跳出循环,即停止输入学生信息。在此函数中使用文件处理的方式,先建立一个文件输出流对象,以写的方式打开f1.txt文件,使输入的学生信息都写入文件。2.2 添加函数 此函数实现的功能主要是,添加一个学生的信息,也就是说调用一次这个函数只能添加一个学生的信息。在此函数中也使用文件处理的方式,但使用的

6、是以追加的方式打开文件,使输入的学生信息写在文件里原有信息的后面。2.3 删除函数 此函数实现的功能主要是,删除一个学生的信息。在此函数中,先以读的方式打开文件,读出文件里的信息在显示在屏幕上,用户再根据提示信息输入想要删除第几个人的信息,关闭文件。再以写的方式打开文件,以一个if条件语句控制,再重新将学生信息写入文件(除了打算删除的那个学生的信息),由于是以写的方式打开的文件,所以文件里原有的输入就都没有了,存入的新的数据。2.4 修改函数 此函数实现的功能主要是,修改一个学生的信息。此函数的设计方法和删除函数的设计思想相类似,应用的思想都是将学生信息重新写入文件的方法,将原有数据覆盖。2.

7、5 查询函数 在查询功能中,可以按多条件查询,本系统分为两个查询条件,即按学号查询和按姓名查询。使用if语句来选择查询条件。 2.5.1 按学号查询 根据提示信息输入学号后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的学号和输入的学号相等,则输出该学生的信息,由于学生的学号是唯一固定的,所以并使用break语句跳出循环。 当无查询结果时,会输出一条提示信息“无此人信息!” 。 2.5.2 按姓名查询 根据提示信息输入姓名后,然后使用一个for循环语句,从第一个学生开始检索,如果该学生的姓名和输入的姓名一样,则输出该学生的信息,由于学生的姓名有可能重复出现,所以不能使用brea

8、k语句跳出循环,应该从第一个学生开始检索直到最后一名学生。 当无查询结果时,会输出一条提示信息“无此人信息!” 。2.6 显示函数 此函数实现的功能主要是,显示所有学生的信息。先是从文件中读取学生信息,然后在输出到显示窗口中。用一个for循环语句,来把所有学生的信息都输出。2.7 退出系统 当输入“0”时,就能退出系统,这是通过while语句来控制实现的。第三章 调试及运行结果3.1 主菜单主菜单显示如下:图3-1 主菜单3.2 显示功能按4则显示全部信息,如图3-2:图3-2 显示功能3.3 增加功能进入主菜单后选择2,进入增加功能,按要求输入学生信息,增加数据前显示如图3-2:增加后显示如

9、图3-3:图3-3 增加后3.4 删除功能进入主菜单后选择5,进入删除功能,按要求输入要删除的学生信息,删除数据前显示如图3-3:删除数据后显示如图3-4:图3-4 删除后3.5 修改功能进入主菜单后选择4,进入修改功能,按要求输入要修改的学生信息,修改数据前显示如图3-4:修改后如图3-5:图3-5 修改后3.6 查询功能进入主菜单后选择1,进入查询功能,如图3-6:图3-6学号查询第四章 总结4.1 遇到的问题及解决方法 首先,是对文件的处理不够熟练,通过看书和搜集一些资料解决了这个问题;其次,是在编写程序的过程中出现了一些语法错误,后通过调试逐一解决。4.2 收获和体会此次c+面向对象课

10、程设计,在指导教师的精心教导下,我们学会了如何用C+编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。程序实现上,设计了简单的菜单界面,将各个功能集中出现在主菜单中,便于调用。根据C+课程所学的概念、理论和方法,按照C+程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C+语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不断改进,才能更好提高编程能力。参考文献1 C+语言程序设计(第三版),郑莉,清华

11、大学出版社,2004 2C+语言程序设计案例教程,郑莉,清华大学出版社,20053C+程序设计教程,钱能主编,清华大学出版社,1999.4 4C+程序设计,谭浩强,清华大学出版社,20045C+程序设计实践指导,谭浩强,清华大学出版社,20056C+程序设计课程设计,刘振安,机械工业出版社,2004.8 附录:程序代码#include#include#include#include#include using namespace std;typedef struct students int xuehao; char name8; char xingbie4; char nianji20; c

12、har dizhi80; char dianhua16; float yuwen; float shuxue; float yingyu; float zongfen; struct students *next;stu;stu *bulidline() stu *head,*p,*q; stu a; head=(stu*)malloc(sizeof(stu);/开辟新空间 if(head=NULL)return 0; FILE *fp=fopen(students.txt,r); q=head; do fscanf(fp,%d %s %s %s %s %s %f %f %fn,&a.xueh

13、ao,a.name,a.xingbie,a.nianji,a.dizhi,a.dianhua,&a.yuwen,&a.shuxue,&a.yingyu); p=(stu *)malloc(sizeof(stu); p-xuehao=a.xuehao; strcpy(p-name,a.name); strcpy(p-xingbie,a.xingbie); strcpy(p-nianji,a.nianji); strcpy(p-dizhi,a.dizhi); strcpy(p-dianhua,a.dianhua); p-yuwen=a.yuwen; p-shuxue=a.shuxue; p-yin

14、gyu=a.yingyu; p-zongfen=a.yuwen+a.shuxue+a.yingyu; q-next=p; q=p; while(!feof(fp); p-next=NULL; fclose(fp); return head;void chaxun(stu *head) stu *q,*p; q=head; int xuehao,r=0,i=0; while(1) loop2: coutttt请输入查询学生学号:endl; coutxuehao; system(cls); p=q-next; for(p;p!=NULL;p=p-next) if(p-xuehao=xuehao)

15、coutttt学号:xuehaoendlttt姓名:nameendlttt性别:xingbieendlttt年级:nianjiendlttt家庭住址:dizhiendlttt联系电话:dianhuaendlttt语文:yuwenendlttt数学:shuxueendlttt英语:yingyuendlttt总分:zongfenendl; i=1; break; else i=0; if(i=0) coutttt该生信息不存在或输入错误,请重新输入!endl; goto loop2; loop: coutttt下一步:endl; coutttt1、查询下一个;2、结束endl; coutr; sy

16、stem(cls); if(r=2)return; if(r!=1) coutttt输入有误,请重新输入!next; while(p!=NULL) q=p; p=p-next; q-next=s; s-next=p; s-xuehao=std-xuehao; strcpy(s-name,std-name); strcpy(s-xingbie,std-xingbie); strcpy(s-nianji,std-nianji); strcpy(s-dizhi,std-dizhi); strcpy(s-dianhua,std-dianhua); s-yuwen=std-yuwen; s-shuxue

17、=std-shuxue; s-yingyu=std-yingyu; s-zongfen=std-yuwen+std-shuxue+std-yingyu; return 0;int xiugai(stu *head) stu *q,*p; q=head; int xuehao,r=0,j=0; while(1) int i=0; coutttt请输入要修改信息学生学号:endl; coutxuehao; system(cls); p=q-next; for(p;p!=NULL;p=p-next) if(p-xuehao=xuehao) coutttt学号:xuehaoendl; coutttt姓

18、名:nameendl; coutttt性别:xingbieendl; coutttt班级:nianjiendl; loop: coutttt家庭住址:dizhiendl; coutp-dizhi; system(cls); coutttt联系电话:dianhuaendl; coutp-dianhua; system(cls); coutttt语文:yuwenendl; coutp-yuwen; system(cls); coutttt数学:shuxueendl; coutp-shuxue; system(cls); coutttt英语:yingyuendl; coutp-yingyu; sys

19、tem(cls); loop2: coutttt是否确认修改?endl; coutttt1、是;2、重新输入;3、返回endl; coutr; system(cls); if(r=2)goto loop; else if(r=3)return 0; else if(r!=1) cout选择错误,请重新选择!endl; goto loop2; i=1; break; else i=0; if(i=0) coutttt输入错误!endl; return 0; loop3: coutttt修改下一个?endl; coutttt1、是;2否endl; coutj;system(cls); if(j=2

20、)return 0; else if(j!=1) coutttt输入有误,请重新输入!endl; goto loop3; int shanchu(stu *head) stu *p,*q; int xuehao; while(1) int i=0,r=0; coutxuehao; system(cls); q=head; p=q-next; while(p!=NULL&p-xuehao!=xuehao) q=p; p=p-next; coutttt学号:xuehaoendlttt姓名:nameendlttt性别:xingbieendlttt年级:nianjiendlttt家庭住址:dizhie

21、ndlttt联系电话:dianhuaendlttt语文:yuwenendlttt数学:shuxueendlttt英语:yingyuendlttt总分:zongfenendl; while(1) coutttt是否确认删除?endl; coutttt1、是;2、否endl; coutr;system(cls); if(r=1)break; else if(r=2)return 0; else coutttt输入有误,请重新选择!next=p-next; coutttt删除成功!endl; else coutttt该生信息记录不存在!;loop: coutttt是否继续先删除?endl; cout

22、ttt1、是;2否endl; couti;system(cls); if(i=2)return 0; else if(i!=1) coutttt输入有误,请重新选择!next; for(p;p!=NULL;p=p-next) couttt第i名:; cout 学号:xuehaoendlttt姓名:nameendlttt性别:xingbieendlttt年级:nianjiendlttt家庭住址:dizhiendlttt联系电话:dianhuaendlttt语文:yuwenendlttt数学:shuxueendlttt英语:yingyuendlttt总分:zongfenendl; coutnext

23、; for(p;p!=NULL;p=p-next) for(q=p-next;q!=NULL;q=q-next) if(p-zongfenzongfen) a.xuehao=p-xuehao; strcpy(a.name,p-name); strcpy(a.xingbie,p-xingbie); strcpy(a.nianji,p-nianji); strcpy(a.dizhi,p-dizhi); strcpy(a.dianhua,p-dianhua); a.yuwen=p-yuwen; a.shuxue=p-shuxue; a.yingyu=p-yingyu; l=p-zongfen; p-

24、xuehao=q-xuehao; strcpy(p-name,q-name); strcpy(p-xingbie,q-xingbie); strcpy(p-nianji,q-nianji); strcpy(p-dizhi,q-dizhi); strcpy(p-dianhua,q-dianhua); p-yuwen=q-yuwen; p-shuxue=q-shuxue; p-yingyu=q-yingyu; p-zongfen=q-zongfen; q-xuehao=a.xuehao; strcpy(q-name,a.name); strcpy(q-xingbie,a.xingbie); strcpy(q-nianji,a.nianji); strcpy(q-dizhi,a.dizhi);

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

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