学生信息管理系统.doc
- 文档编号:5384094
- 上传时间:2023-05-08
- 格式:DOC
- 页数:14
- 大小:2.60MB
学生信息管理系统.doc
《学生信息管理系统.doc》由会员分享,可在线阅读,更多相关《学生信息管理系统.doc(14页珍藏版)》请在冰点文库上搜索。
课程实训报告
课程名称《C语言程序设计》
系别:
工程技术系
专业班级:
计应1101
组号:
第四组
姓名:
姚勤富
实训题目:
学生信息管理系统
实训日期:
2012年6月21日
指导老师:
刘影
2012年6月20日
实训目的
1、通过C语言课程设计,使学生能够将学到的面向对象的设计思想运用在具体的工作和学习中,加深对类和对象的理解,要求学生对生活中许多具体的事物抽象出类,并掌握继承和派生类、基类、虚函数和多态的概念。
2、通过这次课程设计掌握《C语言程序设计》的编程思想,为后续课程打下基础。
3、培养我实际操作能力和实践能力,为以后的工作打下坚实的基础。
课程设计的要求;
利用学到的编程知识和编程技巧,要求学生:
1、对系统进行功能模块分析、控制模块分析正确。
2、系统设计要能完成题目所要求的功能。
3、编程简练,可用,尽可能的使系统的功能更加完善和全面。
4、使用说明书、流程图要清楚。
实训内容
1、课程设计的题目及简介
有新生来报到,要逐个录入其信息,如:
姓名、性别、籍贯、民族、生日、政治面貌、身份证号、高数成绩。
要求设计链表类来实现,并统计学生信息。
2、设计说明
总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。
也可根据自己对题目的理解增加新的功能模块。
实训简单操作步骤
1、录入学生信息
录入学生的个人信息,例如姓名、性别、籍贯、民族、生日、政治面貌、身份证号、高数成绩、大学英语成绩、C++成绩、大学物理成绩、马克思主义成绩、总分。
2、显示学生信息
显示学生的个人信息。
3、查找学生信息
查找录入学生的个人信息。
4、删除学生信息
删除学生的个人信息。
5、修改学生信息
修改学生的个人信息。
6、统计学生成绩
统计学生的个人信息,例如高数成绩的总分,平均分,及格率。
7、保存学生信息
0、退出系统
实训结果
录入和显示学生信息界面;
统计学生的个人信息成绩界面;
实训心得体会
这一周的C语言课程实训,时间上说长不长,说短也不短,却让我学到了很多!
第一点:
C语言,我们需要学习的知识还有很多。
在这次的实训过程中,我们遇到的许多难题,我们翻阅了大量的书籍资料,我想只有努力勤奋的学习,才可以取得最后的成功!
第二点:
团队合作是非常重要的。
独木不成林,在成功的道路上不可能是一帆风顺的,在团队合作中,我们应该相互帮助,共同合作,才能最终取得成功。
想要成功就必须付出艰辛的努力,不断用知识的力量来武装自己,感染他人,这样我们才能胜利。
实训评语及成绩
评语
成绩
指导教师
(签名)
2012年6月24日
附录:
1、录入学生信息流程图
学生信息管理系统
1:
录入学生信息
2:
显示学生信息
3:
查找学生信息
4:
删除学生信息
5:
修改学生信息
6:
统计学生成绩
7:
保存学生信息
0:
退出系统
输入学生的信息,例如姓名,年龄
判断是否重复学生信息
Y
N
退出
1
继续录入学生成绩
返回主界面
功能模块图
显示学生的各类信息
按学号或者姓名查找学生信息
统计学生的各类科目的总成绩,平均分和及格率
退出系统菜单
0
按照学号或者姓名修改学生的信息
按照学号删除学生的信息
判断是否继续
(1),返回(0)
保存学生信息
录入学生信息
继续录入学生成绩
二、程序清单
#include
#include
#include
#include
usingnamespacestd;
classstudent
{
protected:
intnumber;
charname[20];
charsex[6];
charplace[20];
charnation[6];
charbirth[20];
charparty[10];
charid[20];
floatscore[4];
public:
student*next;
student(){}
~student(){}
char*getname(){returnname;}
intgetnumber(){returnnumber;}
doublegetscore(inti){returnscore[i];}
floatgetg(){return(score[0]+score[1]+score[2]+score[3]+score[4]);}
voidinput()
{inte=1;
cout<<"\t\t\t按提示输入:
"< cout<<"\t\t输入学号: "; cin>>number; cout<<"\t\t输入姓名: "; cin>>name; do {lable: cout<<"\t\t输入性别: "; cin>>sex; if(strcmp(sex,"男")==0||strcmp(sex,"女")==0) {cout<<"\t\t输入籍贯: "; cin>>place; cout<<"\t\t输入民族: "; cin>>nation; cout<<"\t\t输入生日: "; cin>>birth; cout<<"\t\t输入政治面貌: "; cin>>party; cout<<"\t\t输入身份证号: "; cin>>id; cout<<"\t\t输入高数分数: "; cin>>score[0]; cout<<"\t\t输入大学英语分数: "; cin>>score[1]; cout<<"\t\t输入c++语言程序设计分数: "; cin>>score[2]; cout<<"\t\t输入大学物理分数: "; cin>>score[3]; cout<<"\t\t输入马克思列宁主义哲学分数: "; cin>>score[4]; e=0; } else { cout<<"\t\t\t无此类型性别! 重新输入! "< e=1; gotolable; } }while(e); return; } voidinput(ifstream&is) { is>>number>>name>>sex>>place>>nation>>birth>>party>>id >>score[0]>>score[1]>>score[2]>>score[3]>>score[4]; is.get(); } voidoutput() { cout<<"学生基本信息如下: "< cout<<"学号: "< <<"姓名: "< <<"性别: "< <<"籍贯: "< <<"民族: "< <<"生日: "< <<"政治面貌: "< <<"身份证号: "< <<"高数: "< <<"大学英语: "< <<"c++语言程序设计: "< <<"大学物理: "< <<"马克思列宁主义哲学: "< <<"总分: "< } voidoutput(ofstream&os) { os< < < < < < < < < < < < < } }; classschool { public: school(){head=newstudent;head->next=NULL;key=0;} ~school(){deletehead;} voidinput(); voidmend(); voiddel(); intfind(student**p,intnum,char*pn="^"); voidfound(); voidshow(); voidcount(); voidsave(); voidbegin(); voidclear(); charmainmenu(); intgetkey(){returnkey;} voidsetkey(intk){key=k;} private: student*head; intkey; }; //录入函数 voidschool: : input() { student*p,*p2=NULL; p=head; intn; while(p->next) p=p->next; while(n) { p2=newstudent; p2->input(); p->next=p2; p2->next=NULL; p=p->next; school: : setkey (1); cout<<"\t\t\t按1继续,按0返回: "; cin>>n; } } //子查找函数 intschool: : find(student**p1,intnum,char*pn) { student*p; p=head; while(p->next) { (*p1)=p; if((p->next)->getnumber()==num||! strcmp((p->next)->getname(),pn)) return1; p=p->next; } return0; } //查找函数 voidschool: : found() { student*p; intnum=-1,n=9; charname[20]="^"; do { cout<<"\t\t1: 按学号查找,2: 按姓名查找: "; cin>>n; }while(n<1||n>2); if(n==1) { cout<<"\t\t\t输入学号: "; cin>>num; } if(n==2) { cout<<"\t\t\t输入姓名: "; cin>>name; } if(! find(&p,num,name)) { cout<<"\t\t找不到你要查找的内容! "< return; } (p->next)->output(); } //删除函数 voidschool: : del() { student*p,*p2; intnum; cout<<"\t\t\t输入学号: "; cin>>num; if(! find(&p,num,"^")) { cout<<"\t\t找不到你要删除的内容! "< return; } (p->next)->output(); p2=p->next; p->next=p2->next; deletep2; school: : setkey (1); } //显示函数 voidschool: : show() { student*p; p=head; while(p->next) { (p->next)->output(); p=p->next; } } //修改函数 voidschool: : mend() { student*p; intnum=-1,n; charname[20]="^"; do { cout<<"\t\t1: 按学号修改,2: 按姓名修改: "; cin>>n; }while(n<1||n>2); if(n==1) { cout<<"\t\t\t输入学号: "; cin>>num; } if(n==2) { cout<<"\t\t\t输入姓名: "; cin>>name; } if(! find(&p,num,name)) { cout<<"\t\t找不到你要修改的内容! "< return; } (p->next)->output(); (p->next)->input(); school: : setkey (1); } //保存函数 voidschool: : save() {student*p; p=head; ofstreamos("student.txt",ios: : out); if(school: : getkey()==1) { while(p->next) { (p->next)->output(os); p=p->next; } } cout<<"\t\t\t文件已保存! "< school: : setkey(0); } //初始化函数 voidschool: : begin() { student*p,*p2; p=head; clear(); longt; ifstreamis("student.txt",ios: : in); if(! is) { ofstreamos("student.txt",ios: : out); os.close(); return; } intnum=-1; while (1) {num=-1; t=is.tellg(); is>>num; is.seekg(t); if(num<0) { is.close(); return; } p2=newstudent; p2->input(is); p->next=p2; p2->next=NULL; p=p->next; } } //清空函数 voidschool: : clear() { student*p,*p2; p=head->next; while(p) { p2=p; p=p->next; deletep2; } } //统计函数 voidschool: : count() { student*p; p=head; intn=0; doubleg[5]={0,0,0,0,0}; floatj[5]={0,0,0,0,0}; while(p->next) { p=p->next; n++; for(inti=0;i<5;i++) { g[i]=g[i]+(p->getscore(i)); (p->getscore(i))>=60? j[i]++: 0; } } cout<<"\t\t\b\b\b\b高数总分: "< "< <<"及格率: "< "< <<"平均分: "< "< <<"\t\t\b\b\b\bc++语言程序设计总分: "< "< <<"及格率: "< <<"\t\t\b\b\b\b大学物理总分: "< "< <<"及格率: "< <<"\t\t\b\b\b\b马克思列宁主义哲学总分: "< "< <<"及格率: "< } //主选菜单函数 charschool: : mainmenu() { charn[6]; cout<<"\n\n~~~~~\(0^◇^0)/欢迎进入学生学籍管理系统\(0^◇^0)/~~~~~"< cout<<""< <<"▁▂▃▄▅▆▇███████████████▇▆▅▄▃▂▁"< <<"★★★★★★★★★★★★★★★★★★★"< <<"☉☉1: 录入学生信息☉☉"< <<"☉☉2: 显示学生信息☉☉"< <<"☉☉3: 查找学生信息☉☉"< <<"☉☉4: 删除学生信息☉☉"< <<"☉☉5: 修改学生信息☉☉"< <<"☉☉6: 统计学生成绩☉☉"< <<"☉☉7: 保存学生信息☉☉"< <<"☉☉0: 退出系统☉☉"< <<"★★★★★★★★★★★★★★★★★★★"< <<"★★★★★★★★★★★★★★★★★★★"< <<"请选择: "; cin>>n; returnn[0]; } //
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统