广东某某学院
《数据结构课程设计》
题 目: 学生成绩管理系统 学 号: 姓 名: 年 级: 学 院: 专 业: 指导教师:
1
目录
一、课程设计目的 ......................................... 3 1.1问题描述 .......................................... 3 1.2需求分析 .......................................... 3 二、数据结构的设计 ....................................... 3 2.1数据结构的选择 ..................................... 3 2.2单链表的定义....................................... 4 2.3重要函数的定义及说明 ............................... 4 三、系统总体流程图 ....................................... 6 四、运行结果 ............................................. 7 五、调试情况分析 ......................................... 8 六、设计总体体会 ......................................... 9 七、附录 ................................................ 10
2
一、课程设计目的
1.1问题描述
设计一个简单的学生成绩管理系统。
1.2基本要求
系统设计要求:
1、完成对学生成绩信息的建立
2、能比较迅速地通过学生的学号找到学生的基本信息和成绩信息 3、在信息需要修改时能精确修改到任何一个数据 4、使用者能清楚的看到所有已经录入的信息
5、在不需要某一个学生的信息时可以根据学号来进行删除
6、能够在任何位置插入学生的信息,以提高系统的灵活性,录入更加方便 7、可以统计已经录入的总学生人数为多少
二、数据结构的设计
2.1数据结构的选择
课程设计题目的要求是,要较简单迅速地实现学生成绩信息的录入,查找,删除,插入,显示等功能,于是我很自然地想到了本学期数据结构第二章学到的单链表的应用,通过编写相应函数来建立、修改、删除节点来实现相应内容,既容易理解同时也能满足课程设计的要求。
3
2.2单链表的定义
先定义单链表结点的基本数据,包括学生学号、名字、性别和语文、数学、英语三门课程,然后再定义链表结点,链表结点包括结点数据域和结点链域,最后在主函数直接定义指向链表结点的指针,并且之后的函数直接取值调用它即可以下为单链表的定义和主函数指针的定义:
typedef struct //定义结点数据域 {
char xuehao[12]; //学生学号 char name[12]; //学生姓名 char sex[4]; //学生性别 char yuwen[4]; //语文成绩 char shuxue[20]; //数学成绩 char yingyu[10]; //英语成绩
}database; //成员名 typedef struct biao //定义链表结点 {
LinkList*p; //指向链表结点的指针 p =new LinkList; //分配一块空间 p->next = NULL; //下一块为空
database data; //结点数据域 struct biao* next; //结点链域
}LinkList; //成员名
2.3重要函数的定义及说明
LinkList* jianli(LinkList*& p); //学生信息初始建立 void xianshi(LinkList* p); //学生信息显示 LinkList *chazhao(LinkList *p); //学生信息的查找 void charu(LinkList*& p); //学生信息的插入 LinkList* xiugai(LinkList*& p); //学生信息的修改 LinkList* shanchu(LinkList *& p); //学生信息的删除 int num(); //学生人数的统计
4
这里我主要负责的模块是学生人数统计,所以接下来我主要会对这进行说明与解释
int num(LinkList* p) {
int n = 0;
LinkList* L = p; //定义指针L=p
while (L->next != NULL) // 判断L的下一个是否为空,如果
L 不为空,则输出以下内容并让指针继续指向下一个节点。如果L为空,则退出;循环,返回n。
}
{ n++;
L = L->next; } return n;
三、}系统总体流程图
系统整体的功能与用到的关键代码如下图,设计基本思想是以单链表为基础
5
数据结构课程设计报告+学生成绩管理系统 - 图文



