C++课程设计——学籍管理系统实验报告.doc
文本预览下载声明
《学生学籍管理系统》
程序设计基础课程设计报告
专 业:
班 级:
学 号:
姓 名:
指导教师:
二OO八 年 六月二十六日
C++课程设计——学籍管理系统实验报告
对C++设计的《学生学籍管理系统》总体说明
我这次做的课程设计是《学生学籍管理系统》,本程序采用C++程序语言编写,运用了基于对象和面向对象的程序设计。它主要是完成对学生的基本信息和成绩进行录入、查询和删除功能。实施起来简单快捷,虽然程序简单,但可以作为老师的辅助软件对学生的基本信息和各科成绩进行管理。
总体设计
本程序的流程图如下:
对《学生学籍管理系统》的介绍
(1)具体功能:
数据录入功能:对B.TXT进行数据录入,只录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共7个数据. 综合成绩、学分由程序根据条件自动运算
(2) 查询功能:分为学生基本情况查询和成绩查询两种:
A:学生基本情况查询:
A1----输入一个学号或姓名(可实现选择),查出此生的基本信息并显示输出。
A2---输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。
B:成绩查询:
B1:输入一个学号时,查询出此生的所有课程情况,格式如下:
学 号:xx 姓 名:xxxxx
课程编号:xxx 课程名称:xxxxx 综合成绩:xxxx 实得学分: xx
课程编号:xxx 课程名称:xxxxx 综合成绩:xxxx 实得学分: xx
课程编号:xxx 课程名称:xxxxx 综合成绩:xxxx 实得学分: xx
… … … … ……… … …
共修:xx科,实得总学分为: xxx
删除功能:当在A.TXT中删除一个学生时,自动地在B.TXT中删除此人所有信息。
排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。
(2)源程序说明:
源程序清单及注释如下:
#includeiostream
#includefstream
#includeiomanip
using namespace std;
class Basic
{
public:
virtual int input(ifstream its)=0;
virtual void input()=0;
virtual void display(ofstream its)=0;
virtual void display()=0;
virtual void display_1(){}
friend class College;
protected:
//把这些数放在这,方便调用
Basic *next;//指针
int number;//学号
char name[40];//姓名
int dom_number;//宿舍号
double mark; //综合成绩
int credit; //实得学分
};
class Student:virtual public Basic
{
public:
int input(ifstream its)//输入流
{
itsnumber;
if(number==-1)
return 0;
else
{
itsnamesexdom_numberphone_number;
return 1;
}
}
void input()//输入
{
cout学号:;
cinnumber;
cout 姓名:;
cinname;
cout性别:;
cinsex;
cout宿舍号码:;
cindom_number;
cout电话号码:;
cinphone_number;
}
void display(ofstream its)//输出流
{
itsnumber name sex dom_number phone_numberendl;
}
void display()//输出
{
coutnumbersetw(10)namesetw(6)sexsetw(10)dom_numbersetw(13)phone_numberendl;
}
private:
char sex[5];//性别
char phone_number[20];//电话号码
};
cla
显示全部