新微赢技术网
标题:
[原创]学生管理系统框架
[打印本页]
作者:
简单快乐
时间:
2009-11-3 04:04
标题:
[原创]学生管理系统框架
网线刚刚段了1个小时,不能上网.就写了个学生管理系统的框架,大家给些意见,我发现我越来越喜欢写框架了,呵呵~!
[code]
//课程类
class Course
{
int courseNo; //课程编号
string cName;//课程名字
int credit; //学分
int score; //成绩
public:
void set_cName(string na){cName=na;} //设置课程名
string get_cName(){return cName;} //获取课程名
int get_credit(){return credit;} //获取学分
int get_score(){return score;} //获取成绩
void change(); //修改课程信息
};
//学生类
class Student
{
string ID; //学号
string name; //姓名
string address; //住址
int age; //年龄
int courseNo; //选修课程数
vector<Course>c; //课程信息
public:
void set_courseNo(int num){courseNo=num;} //设置课程数
int get_courseNo(){return courseNo;} //获取课程数
void add_Course(); //增加一门课程
void sub_Course(); //减少一门课程
void change(); //修改一个学生的信息
friend void CClass::change(string id); //修改班级信息<==>修改学生信息的总和
};
//班级类
class CClass
{
vector<Student>s; //班上学生信息
int cNo; //班号
string cFname; //班级信息存储路径
public:
void set_cNo(int n){cNo=n;}//设置班号
void setFname()
//设置存储路径
{
cout<<"输入存储的路径:";
string f;cin>>f;
cFname=f;
}
string getFname()const{return cFname;} //获取存储路径
void setAllStudent(ifstream &is); //加载全班学生信息
void saveAllStudent(ofstream &os); //保存全班学生信息
void change(string id); //修改一个学生的信息(根据学号)
void addInform(); //增加一个学生
void delInform(); //删除一个学生
void checkClass(); //查看班级信息
friend void newClass(); //新建班级信息
friend void delClass(int cnum); //删除班级信息(根据班号)=>根据cnum=CClass.cNo;
};
//新建班级信息
void newClass();
//删除班级信息
void delClass(int cnum);
作者:
毅歌
时间:
2009-11-3 04:04
来坐客
作者:
lianeh
时间:
2009-11-3 04:04
路过,看看
作者:
ξǒひ糀無蒛
时间:
2009-11-3 04:04
已楼主学C++时间之短写出这么清晰的设计已经十分不易了,在论坛里我还没见过有谁进步这么快。
提一点小小意见:就是课程类Course不应该是完全属于学生类Student的,因为大家很可能上同样的课,把int courseNo; string cName; int credit;重复了很多次,一是没有必要,二是浪费了内存,三是单门课的成绩排名很难搞。可能再建一个CourceInfo的类比较好,学生那只留下课程ID和成绩,或者干脆什么都不留只剩一个对那门课的指针。
这类问题怎么写都不能说最好,标准办法就是挂上数据库,所有这些乱七八糟的关系都轻易举的搞定了。
作者:
`|楛纞♂ぺ﹖
时间:
2009-11-3 04:04
谢谢抬举,我也只是一知半解,偶还没开始学数据库,慢慢来吧,还需要兄弟你多多帮助哦
作者:
一世豪杰
时间:
2009-11-3 04:04
提一点小小意见:就是课程类Course不应该是完全属于学生类Student的,因为大家很可能上同样的课,把int courseNo; string cName; int credit;重复了很多次,一是没有必要,二是浪费了内存,三是单门课的成绩排名很难搞。可能再建一个CourceInfo的类比较好,学生那只留下课程ID和成绩,或者干脆什么都不留只剩一个对那门课的指针。
我一开始也想过做排名,但是想到大学都没有排名,而且没个学生的信息都是独立的,所以就这样写了.至于course类,我觉得不管怎么样都没有浪费内存,因为我是作为大学里的学生成绩模式写的,你是说按照高中那样,一门课程的名字下面写下所以的学生成绩,那个比较古老了,所以我才这样用的
作者:
最ヅ后愛上你
时间:
2009-11-3 04:04
想问问SQL要什么做铺垫,想多学点宝贝
作者:
守护天使
时间:
2009-11-3 04:04
什么叫SQL用什么做铺垫呀?装个Microsoft Access或者MySQL之类的,在VC上用ODBC连接,对于这种程序个以很方面的实现各种功能。
作者:
地瓜
时间:
2009-11-3 04:04
可以直接学SQL,而不用掌握其他的知识?
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2