学生信息管理系统(共14页)_第1页
学生信息管理系统(共14页)_第2页
学生信息管理系统(共14页)_第3页
学生信息管理系统(共14页)_第4页
学生信息管理系统(共14页)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上课 程 实 训 报 告课程名称 C语言程序设计 系 别: 工程技术系 专业班级: 计应1101 组 号: 第四组 姓 名: 姚勤富 实训题目: 学生信息管理系统 实训日期: 2012年6月21日 指导老师: 刘 影 2012年6月20日实 训 目 的1、通过C语言课程设计,使学生能够将学到的面向对象的设计思想运用在具体的工作和学习中,加深对类和对象的理解,要求学生对生活中许多具体的事物抽象出类,并掌握继承和派生类、基类、虚函数和多态的概念。2、通过这次课程设计掌握C语言程序设计的编程思想,为后续课程打下基础。3、培养我实际操作能力和实践能力,为以后的工作打下坚实的基础

2、。课程设计的要求 ;     利用学到的编程知识和编程技巧,要求学生: 1、对系统进行功能模块分析、控制模块分析正确。 2、系统设计要能完成题目所要求的功能。 3、编程简练,可用,尽可能的使系统的功能更加完善和全面。 4、使用说明书、流程图要清楚。实 训 内 容1、课程设计的题目及简介有新生来报到,要逐个录入其信息,如:姓名、性别、籍贯、民族、生日、政治面貌、身份证号、高数成绩。要求设计链表类来实现,并统计学生信息。2、设计说明总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。也可根据自己对题目的理解增加新的功能

3、模块。实 训 简 单 操 作 步 骤1、录入学生信息录入学生的个人信息,例如姓名、性别、籍贯、民族、生日、政治面貌、身份证号、高数成绩、大学英语成绩、C+成绩、大学物理成绩、马克思主义成绩、总分。2、显示学生信息显示学生的个人信息。3、查找学生信息查找录入学生的个人信息。4、删除学生信息删除学生的个人信息。5、修改学生信息修改学生的个人信息。6、统计学生成绩统计学生的个人信息,例如高数成绩的总分,平均分,及格率。7、保存学生信息0、退出系统实 训 结 果录入和显示学生信息界面;统计学生的个人信息成绩界面;实 训 心 得 体 会这一周的C语言课程实训,时间上说长不长,说短也不短,却让我学到了很多

4、!第一点:C语言,我们需要学习的知识还有很多。在这次的实训过程中,我们遇到的许多难题,我们翻阅了大量的书籍资料,我想只有努力勤奋的学习,才可以取得最后的成功!第二点:团队合作是非常重要的。独木不成林,在成功的道路上不可能是一帆风顺的,在团队合作中,我们应该相互帮助,共同合作,才能最终取得成功。想要成功就必须付出艰辛的努力,不断用知识的力量来武装自己,感染他人,这样我们才能胜利。实训评语及成绩评 语成 绩指导教师(签 名)2012年6月 24 日附录:1、录入学生信息 流程图学生信息管理系统1:录入学生信息2:显示学生信息3:查找学生信息4:删除学生信息5:修改学生信息6:统计学生成绩7:保存学

5、生信息0:退出系统输入学生的信息,例如姓名,年龄判断是否重复学生信息YN退出1继续录入学生成绩返回主界面功能模块图显示学生的各类信息按学号或者姓名查找学生信息统计学生的各类科目的总成绩,平均分和及格率退出系统菜单0按照学号或者姓名修改学生的信息按照学号删除学生的信息判断是否继续(1),返回(0)保存学生信息录入学生信息继续录入学生成绩二、程序清单#include<iostream>#include<string>#include<fstream>#include<iomanip> using namespace std;class student

6、 protected: int number; char name20; char sex6; char place20; char nation6; char birth20; char party10; char id20; float score4;public: student *next; student() student() char* getname() return name; int getnumber() return number; double getscore(int i) return scorei; float getg() return (score0+sco

7、re1+score2+score3+score4); void input() int e=1; cout<<"ttt按提示输入:"<<endl; cout<<"tt输入学号: " cin>>number; cout<<"tt输入姓名: " cin>>name; do lable:cout<<"tt输入性别: " cin>>sex; if(strcmp(sex,"男")=0 | strcmp(sex,

8、"女")=0) cout<<"tt输入籍贯: " cin>>place; cout<<"tt输入民族: " cin>>nation; cout<<"tt输入生日: " cin>>birth; cout<<"tt输入政治面貌: " cin>>party; cout<<"tt输入身份证号: " cin>>id; cout<<"tt输入高数分

9、数: " cin>>score0; cout<<"tt输入大学英语分数: " cin>>score1; cout<<"tt输入c+语言程序设计分数:" cin>>score2; cout<<"tt输入大学物理分数:" cin>>score3; cout<<"tt输入马克思列宁主义哲学分数:" cin>>score4; e=0; else cout<<"ttt无此类型性别!重新输

10、入!"<<endl; e=1;goto lable; while(e); return ; void input(ifstream & is) is>>number>>name>>sex>>place>>nation>>birth>>party>>id >>score0>>score1>>score2>>score3>>score4; is.get(); void output() cout<<&q

11、uot;学生基本信息如下:"<<endl; cout<<"学号:"<<number <<" 姓名:"<<name <<" 性别:"<<sex <<" 籍贯:"<<place <<" 民族:"<<nation <<" 生日:"<<birth <<" 政治面貌:"<<par

12、ty<<endl <<"身份证号:"<<id <<" 高数:"<<score0 <<" 大学英语:"<<score1 <<" c+语言程序设计:"<<score2 <<" 大学物理:"<<score3 <<" 马克思列宁主义哲学:"<<score4 <<" 总分:"<<getg(

13、)<<endl; void output(ofstream & os) os<<setw(6)<<number <<setw(15)<<name <<setw(6)<<sex <<setw(20)<<place <<setw(6)<<nation <<setw(20)<<birth <<setw(20)<<party <<setw(20)<<id <<setw(6)<

14、<score0 <<setw(6)<<score1 <<setw(6)<<score2 <<setw(6)<<score3 <<setw(6)<<score4<<endl; ;class school public: school() head=new student; head->next=NULL; key=0; school() delete head; void input(); void mend(); void del(); int find(student *p

15、,int num,char *pn=""); void found(); void show(); void count(); void save(); void begin(); void clear(); char mainmenu(); int getkey() return key; void setkey(int k) key=k; private: student *head; int key;/录入函数void school:input() student *p,*p2=NULL; p=head; int n; while(p->next) p=p-&g

16、t;next; while(n) p2=new student; p2->input(); p->next=p2; p2->next=NULL; p=p->next; school:setkey(1); cout<<"ttt按1继续,按0返回 : " cin>>n; /子查找函数int school:find(student *p1,int num,char *pn) student *p; p=head; while(p->next) (*p1)=p; if( (p->next)->getnumber()=

17、num|!strcmp( (p->next)->getname(),pn ) ) return 1; p=p->next; return 0;/查找函数void school:found() student *p; int num=-1,n=9; char name20="" do cout<<"tt1:按学号查找,2:按姓名查找: " cin>>n; while(n<1|n>2); if(n=1) cout<<"ttt输入学号: " cin>>num; i

18、f(n=2) cout<<"ttt输入姓名: " cin>>name; if(!find(&p,num,name) ) cout<<"tt找不到你要查找的内容!"<<endl; return; (p->next)->output();/删除函数void school:del() student *p,*p2; int num; cout<<"ttt输入学号: " cin>>num; if( !find(&p,num,"&quo

19、t;) ) cout<<"tt找不到你要删除的内容!"<<endl; return; (p->next)->output(); p2=p->next; p->next=p2->next; delete p2; school:setkey(1);/显示函数void school:show() student *p; p=head; while(p->next) (p->next)->output(); p=p->next; /修改函数void school:mend() student *p; in

20、t num=-1,n; char name20="" do cout<<"tt1:按学号修改,2:按姓名修改: " cin>>n; while(n<1|n>2); if(n=1) cout<<"ttt输入学号: " cin>>num; if(n=2) cout<<"ttt输入姓名: " cin>>name; if( !find(&p,num,name) ) cout<<"tt找不到你要修改的内容!&qu

21、ot;<<endl; return; (p->next)->output(); (p->next)->input(); school:setkey(1);/保存函数void school:save() student *p; p=head; ofstream os("student.txt",ios:out); if (school:getkey()=1) while(p->next) (p->next)->output(os); p=p->next; cout<<"ttt文件已保存! &qu

22、ot;<<endl; school:setkey(0);/初始化函数void school:begin() student *p,*p2; p=head; clear(); long t; ifstream is("student.txt",ios:in); if(!is) ofstream os("student.txt",ios:out); os.close(); return ; int num=-1; while(1) num=-1; t=is.tellg(); is>>num; is.seekg(t); if(num&l

23、t;0) is.close(); return; p2=new student; p2->input(is); p->next=p2; p2->next=NULL; p=p->next; /清空函数 void school:clear() student *p,*p2; p=head->next; while( p ) p2=p; p=p->next; delete p2; /统计函数 void school:count() student *p; p=head; int n=0; double g5=0,0,0,0,0; float j5=0,0,0,0,

24、0; while(p->next) p=p->next; n+; for(int i=0;i<5;i+) gi=gi+( p->getscore(i) ); (p->getscore(i) )>=60? ji+ : 0 ; cout<<"ttbbbb高数总分:"<<g0<<" 平均分:"<<g0/n <<" 及格率:"<<j0/n<<endl<<"ttbbbb大学英语总分:"<&

25、lt;g1 <<" 平均分:"<<g1/n<<" 及格率:"<<j1/n<<endl <<"ttbbbbc+语言程序设计总分: "<<g2<<" 平均分: "<<g2/n <<" 及格率:"<<j2/n<<endl <<"ttbbbb大学物理总分:"<<g3<<" 平均分:"&l

26、t;<g3/n <<" 及格率:"<<j3/n<<endl <<"ttbbbb马克思列宁主义哲学总分: "<<g4<<" 平均分: "<<g4/n <<" 及格率:"<<j4/n<<endl;/主选菜单函数char school:mainmenu() char n6; cout<<"nn (00)/欢迎进入学生学籍管理系统(00)/"<<endl<<endl; cout<<" "<<endl<<endl <<""<<endl <<" "<<endl <<" 1: 录入学生信息 "<<endl <<" 2: 显示学生信息 "

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论