湖南大学
《C++》课程设计报告
学生学籍管理系统
目录
一、系统总框图及函数定义及说明 2
二、模块设计分析 5
三、特色算法 5
四、存在的问题及对策 6
五、使用 6
六、程序源代码 6
在一个拥有上万个学生的大学里,对学生的管理成了一件比较棘手的事情(如果你采取人工的办法?!),好在现在有了电脑,有了各种各样的程序来帮你方便的完成这项工作;下面我要介绍的就是本人呕心沥血的拙作。
一、系统总框图及函数定义及说明
表一:
listNode ()
listNode (Inform &);
listNode (listNode &);
链表类
listNode
Inform data listNode* create() ;
listNode* del(listNode *,char*);
int num 数据成员成员函数 listNode* insert(listNode *,Inform &);
私有成员
listNode* modify(listNode *);
listNode *nextPtr void printlistNode (listNode*);
void search (char*, listNode *)
~ listNode ();
achieve ach Inform()
学生信息类
Inform
char *name Inform(Inform &)
char *id int operator<=(const Inform&);
char *sex 数据成员成员函数 Inform& operator=(Inform&)
char *number int operator= =(const Inform&);
私有成员
char *roomnumber int operator!=(char *)
char *phonenumber int operator= =(char *);
~Inform();
int sum achieve();
成绩类
achieve
void countaverage(subject *);
int num int operator= =(achieve &);
数据成员成员函数 achieve &operator=(achieve &);
int average void instruction();
私有成员
void setnum(int a);
subject *T (公) int getnum();
~achieve();
(公有)
科目类
subject
int achievement
(公有)
char name 数据成员成员函数 subject &operator=(const subject &);
(公有)
int xuefen
系统总框图:
本系统的功能虽然不是很强大,但是也包括了添加,删除,查找,修改和计算总学分和加权平均分等
基本的功能,具体框图如下。
开始
界面
密码
主要提示的菜单界面
p或 P 或 I 或i
插入资料
输出资料
D
M D s
或或或
m d S
查找资料
删除资料
修改资料
另外,在程序中,都是以e或E退出系统的,具体的操作可以在提示下进行。
上表列出了程序中定义的类中的数据成员(除特别说明外都是私有成员)和成员函数,并把类之间的包含关系显示出来了。除了上面列举的函数外,还有若干用于重载输入输出的类的友元函数;下表将把所有的函数原型和简单说明列出:
表二
函数原型
函数参数,返回值及功能说明
ListNode()
链表类listNode的空构造函数
listNode(Inform &)
链表类listNode的构造函数(给nextPtr分配动态空间)
listNode(listNode &);
链表类listNode的拷贝构造函数
listNode *create()
建立一个链表,返回链表的头指针
listNode*del(listNode *,char*);
若节点数据的一个属性与char*相同则删除,返回头指
listNode* insert(listNode *,Inform &);
插入一个节点数据(Inform类);返回头指针
listNode*modify(listNode *);
修改链表中节点的数据,返回头指针
void printlistNode(listNode*);
打印链表中的数据
学生学籍管理系统(VC++) 来自淘豆网m.daumloan.com转载请标明出处.