C++课程设计--简单成绩管理系统.docx_第1页
C++课程设计--简单成绩管理系统.docx_第2页
C++课程设计--简单成绩管理系统.docx_第3页
C++课程设计--简单成绩管理系统.docx_第4页
C++课程设计--简单成绩管理系统.docx_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

“C+程序设计”课程设计报告简单成绩管理系统设计姓 名: 丘 艳 华 班 级: 11级电气工程及其自动化4班 学 号: 434 指导老师:曹 敏 完成时间:2012年12月24日 完成地点:广 东 海 洋 大 学 寸 金 学 院一、 基本信息1、设计题目简单成绩管理系统。2、设计目标及思想 设计出一个简单而精致的程序系统。掌握C+中各个知识的综合运用,包括类、函数、字符串的定义等重要众多的知识。运用所学知识,预先把握全局定位,设计出简洁的程序语句,实现最为完美的应用系统。二、程序设计要求1、习题相关信息该系统有启动(按任意键)开始界面和退出界面。本系统是采用键式输入的方法,选择和操作相应的功能(其中包括信息的录入、删除、查询、修改等一系列操作。)2、此设计所要求具有的功能及其分析(1)、系统主要的功能菜单1录入学生成绩2修改学生成绩3 统计学生成绩4 查询学生成绩5显示学生成绩0安全退出系统(2)、各个菜单选项的功能分析录入学生成绩需要分别录入学号(若重复,则有提示学号已存在)、姓名、性别、年龄、学院、年级、和专业及三科的成绩。修改学生信息必须是在已录入的学生信息中才可以进行修改,修改的范围可以是所录入的任一部分。统计学生成绩是对用户所录入的信息进行简单的分析及保存其统计结果,用户可以随时调出其进行查看。可以通过查询对已录入的学生信息进行调出查询。显示学生成绩可以对已经录入的学生信息进行直观的审视。安全退出系统可以让操作者安全退出系统,保护系统内部信息不被丢失及损坏。三、各个功能的详细分析1、录入学生成绩分别录入的是学号(若重复,则有提示学号已存在)、姓名、性别、年龄、学院、年级、和专业及三科的成绩及录入信息截图。具体程序如下:Student * Next; void Input() strcpy(Id,q); cout请输入学生的姓名:name; cout请输入学生的性别:sex; cout请输入学生的年龄:old; cout请输入学生所读学院:school; cout请输入学生的年级:nj; cout请输入学生的专业:zy; cout请输入C+课程的成绩:Cnum; cout请输入大学英语的成绩:Mnum; cout请输入模拟电子技术的成绩:Enum; sum=Cnum+Mnum+Enum; void ReadFile(istream & in) innameIdsexoldschoolnjzyCnumMnumEnumsum; 2、修改学生成绩主要是对输入的学生信息进行修改,则修改程序如下:void Studentmassage:ModifyItem() /修改信息char name20;Student * p=NULL;coutname;if(p=FindItem(name)couttt已找到学生的信息,请输入新的信息!Next-Input();cout修改成功!endl;cout输入任意字符!继续;getch(); elsecouttt没有找到!endl;cout输入任意字符!继续;getch(); 3 统计学生成绩在系统中,对输入的学生成绩进行统计分析,及其排序问题等的实现。其部分程序如下:void Studentmassage:Sort()/对当前链表进行排序 cout Sorting.endl;Student *p=NULL,*p1=NULL,*k=NULL;int n=Studentmassage:ListCount();if(nNext;p!=End;p=p-Next) for(k=p-Next;k!=End;k=k-Next)if(p-sumk-sum) Studentmassage:Swap(p,k); cout 排序完成!endl;getch();return;4、查询学生成绩 若要对输入的学生成绩进行更直观的观察,该系统提供了两种便捷的查询方式,即按照学生姓名和按照学生学号进行查询,且两种查询方式的程序大致相同,查询的代码及查询截图,如下:void Studentmassage:Find1() 查找函数 char name20 ,Id10;int x;Student * p=NULL;coutntt*n;couttt 1.按学生的姓名查找ntt 2.按学生学号查找;coutx;switch(x)case 1:coutname; /按姓名查询if(p=FindItem(name) p-Next-Show();cout输入任意字符!继续;getch(); else couttt没有找到该姓名的学生!nendl;cout输入任意字符!继续; getch(); break; case 2: /按学号查询 coutId; if(p=FindID(Id) p-Next-Show(); cout输入任意字符!继续; getch(); else couttt没有找到该学好的学生!nendl; cout输入任意字符!继续; getch(); break; 5、删除学生成绩对输入的学生信息中,部分存在不足之处,为了保障有足够的空间储存更多的信息,不必要的当然要及时删除,此系统删除程序如下:void Studentmassage:RemoveItem() / 删除信息char name20;Student * p=NULL,*temp=NULL;couttt请输入要删除的学生的姓名:name;if(p=FindItem(name) temp=p-Next;p-Next=p-Next-Next;delete temp;couttt删除成功!endl;cout输入任意字符!继续;getch(); else couttt没有找到!endl; cout输入任意字符!继续;getch();6显示学生信息当然,我们对输入的学生成绩等信息为了在查询或是在其他情况下更直观的观察到,当然需要显示功能,其运行结果和查询结果截图、程序具体如下:void Show() cout学号:Idendl;cout姓名:nameendl;cout性别:sexendl;cout年龄:oldendl;cout学院:schoolendl;cout年级:njendl;cout专业:zyendl;coutC+程序:Cnumendl;cout大学英语:Mnumendl;cout模拟电子技术:Enumendl;cout总成绩:sumendl;cout平均成绩:sum/3Next;p!=End;p=p-Next)outnametIdtsextoldtschooltnjtzytCnumtMnumtEnumtsumn;out.close();8、其他部分要求程序解析(1)学号不可重复问题学号不能重复,则要求在输入学生信息是不能与已保存的学生信息中的学号相同,程序及运行结果截图如下:void Studentmassage:Find2() char name20 ,Id10;int x;Student * p=NULL; coutId;strcpy(q,Id); while(p=FindID(Id) coutn 学号已经存在endl; cout-endl; coutId;strcpy(q,Id); 在其中find(2)是我们重新定义的,它的主要功能是是否可以再已存在的Id中(即学号)找到对应的Id,若找到的话,则会提示“学号已存在,请重新输入学号。”。需要我们重新输入不同的学号,方可执行下一步。实现此功能主要是while循环的使用及拷贝函数的使用。(2)实现不及格科目的显示在此系统的 void show() 中,根据要求,我们设计了实现输入成绩小于60的给予显示,显示哪个为不及格科目,这之上的是显示学生的各类信息,具体是第 6-显示学生信息 部分。主要是if语句的应用。程序如下:Void show()if(Cnum60) coutC+课程不及格.endl;if(Mnum60) cout大学英语不及格.endl;if(Enum60) cout模拟电子技术基础不及格.endl;四、报告总结 这次课程设计中,使我收获很多很多,不管是知识还是团队合作上都有很大的收获。第一方面,使我在一些薄弱环节得到了很多的巩固,复习了一些容易忘记的知识点,例如一些循环语句;第二方

温馨提示

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

评论

0/150

提交评论