欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOCX文档下载  

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

    • 资源ID:10567969       资源大小:138.79KB        全文页数:28页
    • 资源格式: DOCX        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    课程设计报告 课程名称:面向对象程序设计C+ 设计题目: 学生信息管理系统 专 业:计算机科学与技术 姓 名: 学 号 指导教师:李 晓 虹2015 年 1 月 5 日一、 系统需求分析随着计算机的普及,计算机在生活中得到越来越多的应用,其中在计算机上运行的各种软件在解决生活中的实际问题中起着重大的作用,而目前在编写应用程序时,C+以其高效及灵活性成为大多程序设计者的首选。其次对于普通用户的应用者,利用C+语言设计出适用的小型软件对解决生活中的繁琐问题有很大的作用。在学校或班级,我们经常会对某次考试中所有学生的成绩进行统计和管理,由于学生数目经常繁多,所以在处理统计学生总成绩和平均成绩时工作会相对繁琐,所以针对这种情况,同时我们分析了成绩管理系统所需要的功能,在利用C+语言及VC+6.0程序运行平台之下,设计了一种小型的成绩管理系统,该系统具有学生成绩相关信息的录入、显示、查询、修改、删除和统计等功能。二、 总体设计图2-1学生成绩管理系统总体框架图三、 详细设计程序的主要功能:1. 录入功能:录入一些学生的基本信息,包括姓名、学号、7门课堂的课程的成绩(C+、英语、数学、体育、网络基础、C语言、数据库)。2. 显示功能:显示所有学生的主要信息包括姓名、学号、7门课程的课程成绩。3. 查询功能:根据学号、姓名查询这个学生的所有课程成绩。4. 修改功能:对学生信息进行修改。5. 删除功能:根据输入的学生姓名,删除其信息。6. 统计功能:对所有录入的学生的所有课程成绩进行统计。四、 系统调式由于用了switch-case语句,调试代码如下:case 1: /增加数据 char name20;intnumber;doublecpro,english,math,sport,law,hbpro,computer;char c;do cout<<" 请输入您要增加的学生的姓名:"cin>>name;cout<<endl<<" 请输入学号:"cin>>number;cout<<endl<<" 请输入C+成绩:"cin>>cpro;cout<<endl<<" 请输入英语成绩:"cin>>english;cout<<endl<<" 请输入数学成绩:"cin>>math;cout<<endl<<" 请输入体育成绩:"cin>>sport;cout<<endl<<" 请输入网络基础成绩:"cin>>law;cout<<endl<<" 请输入C语言成绩:"cin>>hbpro;cout<<endl<<" 请输入数据库成绩:"cin>>computer;cout<<endl;filej=new ofstream("d:document",ios:ate); *filej<<" 姓名 "<<name<<" 学号 "<<number<<" C+成绩 "<<cpro<<" 英语成绩 "<<english<<" 数学成绩 "<<math<<" 体育成绩 "<<sport<<" 网络基础成绩 "<<law<<" C成绩 "<<hbpro<<" 数据库成绩 "<<computer<<endl;j+; si=new student(name, number, cpro,english,math,sport,law,hbpro,computer);i+;cout<<" 数据输入成功,想继续数入吗(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl<<" "cin>>c; while(c=y);break; case 2: /修改数据 char name20;intnu;doublecc,eng,ma,sp,l,hb,com;flag=0;char c;if(i=0) cout<<" 管理系统中没有输入数据!"<<endl;break; do cout<<" 请输入您要修改的学生的姓名:"cin>>name;cout<<endl; for(int h=0;h<i;h+) /h纪录要修改学生的位置 if(strcmp(name,sh->name)=0) flag=1;cout<<" 请输入新的学号:"cin>>nu;cout<<endl<<" 请输入C+成绩:"cin>>cc;cout<<endl<<" 请输入英语成绩:"cin>>eng;cout<<endl<<" 请输入数学成绩:"cin>>ma;cout<<endl<<" 请输入体育成绩:"cin>>sp;cout<<endl<<" 请输入网络基础成绩:"cin>>l;cout<<endl<<" 请输入C语言成绩:"cin>>hb;cout<<endl<<" 请输入数据库成绩:"cin>>com;cout<<endl;sh->cpro=cc;sh->english=eng;sh->math=ma;sh->sport=sp;sh->law=l;sh->hbpro=hb;sh->computer=com;sh->number=nu;cout<<" 数据修改成功!"<<endl; if(flag=0) cout<<" 您要修改的学生本来就不存在!请检查重新输入!"<<endl; cout<<" 想继续修改吗(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl<<" "cin>>c; while(c=y);break; case 3: /按姓名查询 char n20;int j=0;char c;if(i=0) cout<<" 管理系统中没有输入数据!"<<endl;break; doint flag=0;cout<<" 请输入你要查询的学生姓名:"cin>>n;cout<<endl;for(int j=0;j<i;j+) if(strcmp(n,(*sj).name)=0) flag=1;cout<<" 您要查询的学生是:"<<(*sj).name<<endl;cout<<(*sj).name<<"的成绩是: "<<" C+: "<<(*sj).cpro<<" 英语: "<<(*sj).english<<" 数学:"<<(*sj).math<<" 体育:"<<(*sj).sport<<" 法律:"<<(*sj).law<<" C:"<<(*sj).hbpro<<" 数据库 "<<(*sj).computer<<endl; if(flag=0)cout<<" 对不起!您要查询的学生不存在!"<<endl;cout<<" 您想继续查询吗?(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl;cin>>c; while(c=y);break; case 4: /按学号查询 intn,j=0;char c;if(i=0)cout<<" 管理系统中没有输入数据!"<<endl;break; doint flag=0;cout<<" 请输入你要查询的学生的学号:"cin>>n;cout<<endl;for(int j=0;j<i;j+) if(sj->number=n) flag=1;cout<<" 您要查询的学生是:"<<(*sj).name<<endl;cout<<(*sj).name<<"的成绩是: "<<" C+:"<<(*sj).cpro<<" 英语:"<<(*sj).english<<" 数学:"<<(*sj).math<<" 体育:"<<(*sj).sport<<" 法律:"<<(*sj).law<<" C:"<<(*sj).hbpro<<" 数据库 "<<(*sj).computer<<endl; if(flag=0)cout<<" 对不起!您要查询的学生不存在!"<<endl;cout<<" 您想继续查询吗?(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl;cin>>c; while(c=y);break; case 5: /输出 cout<<" 本系统所有学生数据如下:"<<endl;if(i=0)cout<<" 管理系统中没有输入数据!"<<endl;cout<<" 姓名 学号 c+ 英语 数学 体育 网络基础 C语言 数据库 "<<endl;for(int k=0;k<i;k+) cout<<sk->name<<setw(7)<<sk->number<<setw(6)<<(*sk).cpro<<setw(6)<<(*sk).english<<setw(6)<<(*sk).math<<setw(6)<<(*sk).sport<<setw(7)<<(*sk).law <<setw(10)<<(*sk).hbpro<<setw(10)<<(*sk).computer<<setw(10)<<endl; break; case6:/退出 exit(0); cout<<"Bye bye!"<<endl;cout<<" 您想继续进行其他操作吗?(y/n):"int flag=0;docin>>w;cout<<endl;if(w!=y&&w!=n)cout<<" 指令错误!请重新输入!"<<endl;elseflag=1;while(flag=0);if(w=y)cout<<" 请输入操作代码:0 输入数据"<<endl;cout<<" 1 增加数据"<<endl;cout<<" 2 修改数据"<<endl;cout<<" 3 按姓名查询"<<endl;cout<<" 4 按学号查找"<<endl;cout<<" 5 输出所有学生成绩"<<endl;cout<<" 6 退出系统"<<endl;cin>>p;while(w=y);五、 结果分析调试代码正确,每一个case都能执行,但是有很多的地方都不够完善,例如:在总成绩排序中,只能输出总成绩,不能单独的输出学生的相应的信息;每次进行别的操作之前都要在进行一次数据的录入,不能直接对原有的文件进行读取。六、 总结此次c+课程设计,在指导教师的精心教导下,我学会了如何用C+编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。程序实现上,设计了简单的查询界面,将各个功能集中出来按照程序编写原则,便于查询。 根据C+课程所学的概念、理论和方法,按照C+程序设计的基本步骤,设计出一个适当规模的程序;进一步加深对C+语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计算机的综合运用能力。我们编写程序的过程是辛苦与快乐的,程序的编写原则很重要,只要我们在编程,就必须不断改进,才能更好提高编程能力。源代码:#include<iostream.h>#include<string.h>#include<fstream.h>#include<stdlib.h>#include<iomanip.h>class student private: char name20; /姓名 double cpro,english,math,sport,law,hbpro,computer;/课程int order, number; /名次,学号public:student() student(char n20,intnu,doublecc,doubleeng,doublema,doublesp,doublel,doublehb,double com) strcpy(name,n);number=nu;cpro=cc; english=eng;math=ma;sport=sp;law=l;hbpro=hb;computer=com; friend void main();void main()cout<<" 欢迎进入*学生成绩管理系统*!"<<endl;cout<<" *"<<endl;cout<<" * 学生成绩管理系统 *"<<endl;cout<<" *"<<endl;cout<<" *"<<endl;cout<<" *0、输入数据 *"<<endl;cout<<" *1、增加数据 *"<<endl;cout<<" *2、修改数据 *"<<endl;cout<<" *3、按姓名查询 *"<<endl;cout<<" *4、按学号查询 *"<<endl;cout<<" *5、输出所有学生的成绩 *"<<endl;cout<<" *6、退出系统 *"<<endl;cout<<" *"<<endl;cout<<" 选择0-6数字进行操作"<<endl;charp;char w; student *s50; /指针对象,最多存50个学生数据ofstream *file50; /负责对文件插入操作inti=0;int j=0;int flag=0; do /flag判断输入是否有效 cin>>p;if(p>=0&&p<=6)flag=1;elsecout<<" 指令错误!请重新输入:"<<endl;while(flag=0);do switch(p) /接收功能选项 case 0: /输入数据 char c; char name20;intnumber;doublecpro,english,math,sport,law,hbpro,computer;docout<<" 请输入姓名:"cin>>name;cout<<endl<<" 请输入学号:"cin>>number;cout<<endl<<" 请输入C+成绩:"cin>>cpro;cout<<endl<<" 请输入英语成绩:"cin>>english;cout<<endl<<" 请输入数学成绩:"cin>>math;cout<<endl<<" 请输入体育成绩:"cin>>sport;cout<<endl<<" 请输入网络基础成绩:"cin>>law;cout<<endl<<" 请输入C语言成绩:"cin>>hbpro;cout<<endl<<" 请输入数据库成绩:"cin>>computer;cout<<endl;filej=new ofstream("D:document",ios:ate); *filej<<" 姓名 "<<name<<" 学号 "<<number<<" C+成绩 "<<cpro<<" 英语成绩 "<<english<<" 数学成绩 "<<math<<" 体育成绩 "<<sport<<" 网络基础成绩 "<<law<<" C成绩 "<<hbpro<<" 数据库成绩 "<<computer<<endl;j+; si=new student(name, number,cpro,english,math,sport,law,hbpro,computer);i+;cout<<" 数据输入成功,想继续输入吗(y/n):"cin>>c;cout<<endl;do if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl<<" "cin>>c; elseflag=1;while(flag=0);while(c=y);break; case 1: /增加数据 char name20;intnumber;doublecpro,english,math,sport,law,hbpro,computer;char c;do cout<<" 请输入您要增加的学生的姓名:"cin>>name;cout<<endl<<" 请输入学号:"cin>>number;cout<<endl<<" 请输入C+成绩:"cin>>cpro;cout<<endl<<" 请输入英语成绩:"cin>>english;cout<<endl<<" 请输入数学成绩:"cin>>math;cout<<endl<<" 请输入体育成绩:"cin>>sport;cout<<endl<<" 请输入网络基础成绩:"cin>>law;cout<<endl<<" 请输入C语言成绩:"cin>>hbpro;cout<<endl<<" 请输入数据库成绩:"cin>>computer;cout<<endl;filej=new ofstream("d:document",ios:ate); *filej<<" 姓名 "<<name<<" 学号 "<<number<<" C+成绩 "<<cpro<<" 英语成绩 "<<english<<" 数学成绩 "<<math<<" 体育成绩 "<<sport<<" 网络基础成绩 "<<law<<" C成绩 "<<hbpro<<" 数据库成绩 "<<computer<<endl;j+; si=new student(name, number, cpro,english,math,sport,law,hbpro,computer);i+;cout<<" 数据输入成功,想继续数入吗(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl<<" "cin>>c; while(c=y);break; case 2: /修改数据 char name20;intnu;doublecc,eng,ma,sp,l,hb,com;flag=0;char c;if(i=0) cout<<" 管理系统中没有输入数据!"<<endl;break; do cout<<" 请输入您要修改的学生的姓名:"cin>>name;cout<<endl; for(int h=0;h<i;h+) /h纪录要修改学生的位置 if(strcmp(name,sh->name)=0) flag=1;cout<<" 请输入新的学号:"cin>>nu;cout<<endl<<" 请输入C+成绩:"cin>>cc;cout<<endl<<" 请输入英语成绩:"cin>>eng;cout<<endl<<" 请输入数学成绩:"cin>>ma;cout<<endl<<" 请输入体育成绩:"cin>>sp;cout<<endl<<" 请输入网络基础成绩:"cin>>l;cout<<endl<<" 请输入C语言成绩:"cin>>hb;cout<<endl<<" 请输入数据库成绩:"cin>>com;cout<<endl;sh->cpro=cc;sh->english=eng;sh->math=ma;sh->sport=sp;sh->law=l;sh->hbpro=hb;sh->computer=com;sh->number=nu;cout<<" 数据修改成功!"<<endl; if(flag=0) cout<<" 您要修改的学生本来就不存在!请检查重新输入!"<<endl; cout<<" 想继续修改吗(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl<<" "cin>>c; while(c=y);break; case 3: /按姓名查询 char n20;int j=0;char c;if(i=0) cout<<" 管理系统中没有输入数据!"<<endl;break; doint flag=0;cout<<" 请输入你要查询的学生姓名:"cin>>n;cout<<endl;for(int j=0;j<i;j+) if(strcmp(n,(*sj).name)=0) flag=1;cout<<" 您要查询的学生是:"<<(*sj).name<<endl;cout<<(*sj).name<<"的成绩是: "<<" C+: "<<(*sj).cpro<<" 英语: "<<(*sj).english<<" 数学:"<<(*sj).math<<" 体育:"<<(*sj).sport<<" 法律:"<<(*sj).law<<" C:"<<(*sj).hbpro<<" 数据库 "<<(*sj).computer<<endl; if(flag=0)cout<<" 对不起!您要查询的学生不存在!"<<endl;cout<<" 您想继续查询吗?(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl;cin>>c; while(c=y);break; case 4: /按学号查询 intn,j=0;char c;if(i=0)cout<<" 管理系统中没有输入数据!"<<endl;break; doint flag=0;cout<<" 请输入你要查询的学生的学号:"cin>>n;cout<<endl;for(int j=0;j<i;j+) if(sj->number=n) flag=1;cout<<" 您要查询的学生是:"<<(*sj).name<<endl;cout<<(*sj).name<<"的成绩是: "<<" C+:"<<(*sj).cpro<<" 英语:"<<(*sj).english<<" 数学:"<<(*sj).math<<" 体育:"<<(*sj).sport<<" 法律:"<<(*sj).law<<" C:"<<(*sj).hbpro<<" 数据库 "<<(*sj).computer<<endl; if(flag=0)cout<<" 对不起!您要查询的学生不存在!"<<endl;cout<<" 您想继续查询吗?(y/n):"cin>>c;cout<<endl;if(c!=y&&c!=n) cout<<" 指令错误!请重新输入!"<<endl;cin>>c; while(c=y);break; case 5: /输出 cout<<" 本系统所有学生数据如下:"<<endl;if(i=0)cout<<" 管理系统中没有输入数据!"<<endl;cout<<" 姓名 学号 c+ 英语 数学 体育 网络基础 C语言 数据库 "<<endl;for(int k=0;k<i;k+) cout<<sk->name<<setw(7)<<sk->number<<setw(6)<<(*sk).cpro<<setw(6)<<(*sk).english<<setw(6)<<(*sk).math<<setw(6)<<(*sk).sport<<setw(7)<<(*sk).law <<setw(10)<<(*sk).hbpro<<setw(10)<<(*sk).computer<<setw(10)<<endl; break; case6:/退出 exit(0); cout<<"Bye bye!"<<endl;cout<<" 您想继续进行其他操作吗?(y/n):"int flag=0;docin>>w;cout<<endl;if(w!=y&&w!=n)cout<<" 指令错误!请重新输入!"<<endl;elseflag=1;while(flag=0);if(w=y)cout<<" 请输入操作代码:0 输入数据"<<endl;cout<<" 1 增加数据"<<endl;cout<<" 2 修改数据"<<endl;cout<<" 3 按姓名查询"<<endl;cout<<" 4 按学号查找"<<endl;cout<<" 5 输出所有学生成绩"<<endl;cout<<" 6 退出系统"<<endl;cin>>p;while(w=y);运行截图: (注:文档可能无法思考全面,请浏览后下载,供参考。可复制、编制,期待你的好评与关注)

    注意事项

    本文(课程设计学生信息管理系统.docx)为本站会员(scccc)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开