资源预览内容
第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
第9页 / 共11页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
课题2:高校学籍管理系统 (一)、课程设计题目:高校学籍管理系统(二)、目的与要求: 1、目的: (1)要求学生达到熟练掌握C+语言的基本知识和技能; (2)基本掌握面向对象程序设计的基本思路和方法; (3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。 2、基本要求: (1)要求利用面向对象的方法以及C+的编程思想来完成系统的设计;(2)要求在设计的过程中,建立清晰的类层次; (3)在系统的设计中,至少要用到面向对象的一种机制。3、创新要求: 在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。 4、写出设计说明书 (三)、设计方法和基本原理: 1、问题描述(功能要求): (1)能够从屏幕上读取一个学生的信息并将信息存入到数据文件中。(2)能够将指定的信息从文件中删除。(3)能够按编号、姓名对学生的信息进行检索并将检索结果显示在屏幕上。(4)可以统计全部学生的总成绩,及其在班上的排名。(5)能够统计各科的平均成绩及及格率。(6)要求有错误提示功能,例如性别只能输入男女,输入错误提示重新输入。(7)如果检索不到相应的信息应提示用户。(8)扩展要求:能先行设置本学期的科目 每个学生信息应该包括:姓名、学号、成绩成绩信息应该包括:科目数量、各科目名称、各科目成绩2、问题的解决方案: 根据系统功能要求,可以将问题解决分为以下步骤: (1)写出需求分析(做什么);(2)分析系统中的各个实体之间的关系及其属性和行为; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述(包括属性和方法); (5)完成类中各个成员函数的定义; (6)用户界面的设计; (7)分析系统功能模块(系统流程图);(8)代码编写,功能调试;(9)完成系统总结报告以及系统使用说明书。#include#include using namespace std;int di=0;int num=0;class xinxipublic:int number;char name20;char sex6;char p10010;float fenshu10;float shuliang;float average;float sum;float aver;float jigelv;int i;virtual void Show()/显示cout学生学号:numbern学生姓名:namen学生性别:sexn学生科目数量 :shuliangendl;for(int i=0;ishuliang;i+)coutpi的成绩为:fenshuiendl;cout总成绩为:sumendl;cout平均成绩为:averageendl;void Book(int n)coutnumber;coutname;coutsex;while(1)if(strcmp(sex,男)=0|strcmp(sex,女)=0)break;elsecout输入有误,请重新输入:sex;/*coutshuliang; for(i=0;ishuliang;i+)cout请输入科目i+1的名称pi;cout请输入科目i+1的成绩fenshui;*/while(1) /通过课程确定数量char a;int b;for(i=0,b=0;i+)cout请输入科目i+1的名称pi;cout请输入科目i+1的成绩fenshui;b+;cout是否继续输入?(Y/N)a;if(a=Y|a=y)continue;elseshuliang=b;break;break;/*virtual void Save(fstream &f)/保存到文件f中fnumber name sex fenshu shuliang average sumnumbernamesexfenshushuliangaveragesum;*/;xinxi d100;xinxi v100;/输入学生信息void BookIn()while(1)cout*endl;cout*endl;cout请输入学生信息:endl;ddi.Book(num+);di+;for(int j=0;jdi;j+) /计算总成绩和平均成绩float s=0;for(int i=0;idj.shuliang;i+)s=s+dj.fenshui;dj.sum=s; dj.average=dj.sum/dj.shuliang;cout是否继续输入:Y继续、其他退出x;if(x!=y & x!=Y)break;/删除学生信息void BookOut()int i;while(1)int c;cout*endl;cout*endl;cout请输入您要删除的学生学号:c;for(i=0;idi;i+)if(c=di.number)di=d-di;cout删除成功!endl;elsecout输入错误!endl;system(PAUSE);cout是否继续删除:Y继续、其他退出x;if(x!=y & x!=Y)break;/学生信息查询void Inquiry()while(1)cout*endl;cout*endl;cout1、按学号查询endl;cout2、按姓名查询endl;cout请输入您的选择: ?c;if(c=1)couta;for(int i=0;idi;i+)if(a=di.number)test=1;break;elsetest=0;if(test=0)cout没有这个学生!endl;system(PAUSE);else if(test=1)di.Show();else if(c=2)char c10;coutc;for(int i=0;idi;i+)if(strcmp(c,di.name)=0)test=1;break;elsetest=0;if(test=0)cout没有这个学生!endl;system(PAUSE);else if(test=1)di.Show();else cout输入错误!endl;system(PAUSE);cout是否继续查询:Y继续、其他退出x;if(x!=y & x!=Y)break;/显示学籍信息void Display()for(int i=0;idi;i+)di.Show();coutnendl;void Paixu()int i,k;int tempsum;char tempname10;for(i=0;idi;i+)strcpy(vi.name,di.name);vi.sum=di.sum;for(i=0;idi-1;i+)
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号