1 / 44
文档名称:

数据结构课程设计报告.doc

格式:doc   大小:227KB   页数:44页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构课程设计报告.doc

上传人:gooddoubi 2021/10/21 文件大小:227 KB

下载得到文件列表

数据结构课程设计报告.doc

相关文档

文档介绍

文档介绍:数据结构课程设计报告
数据结构课程设计报告
数据结构课程设计报告
数 据 结 构
课程设计报告书
学校 青岛科技大学          
学号           
姓名      
指导老师 刘勇    
数据结构课程设计报告
数据结构课程设计报告
数据结构课程设计报告
课程设计的名称:学生成绩管理
问题描述:
学生成绩管理是学校教务管理的重要组成部分,其处理信息量很大,该题目是对学生的成绩管理作一个简单的模拟,其中学生信息包括:学号、姓名与成绩。成绩分为课程1成绩、课程2成绩、,输入各门功课的成绩后能自动求出总成绩,并通过菜单选择操作方式完成下列功能:
登记学生成绩;
②查询学生成绩;
插入学生成绩;
④删除学生成绩;
按总成绩降序排序。
基本要求:
该题目涉及到单链表的各种操作,包括单链表的建立、结点的查找、插入、删除等基本运算。首先建立学生成绩单链表,链表中每个结点由4个域组成,分别为:学号、姓名、成绩、存放下一个结点地址的next域。然后将要求完成的四项功能写成四个函数,登记学生成绩对应建立学生单链表的功能,后三个功能分别对应单链表的查询、插入与删除三大基本操作。
算法思想:
Creat()函数算法思想:从0至n循环输入n个同学的三科成绩,并且计算总成绩。
数据结构课程设计报告
数据结构课程设计报告
数据结构课程设计报告
Inquiry()函数算法思想:将学号与已输入的所有学号做比较,一旦相同则输出该学号信息,否则显示没有该学生信息。
Insert ()函数算法思想:生成一个新节点,然后将其接到原有链表尾部。
Delete()函数算法思想:通过ID找到该节点,并删去该节点。
Sort(函数算法思想:利用排序算法对每一个节点作比较并更换其在链表中的位置顺序.
模块划分
(1)LinkList Creat(LinkList T,int n)其功能是创造节点,录入成绩。
(2)void Inquiry(LinkList T)其功能是查询与已知ID一致的学生信息并展示出来。
(3)void Insert(LinkList T,int n) 其功能是添加若干个学生的成绩信息。
(4)void Delete(LinkList T) 其功能是删除若干个学生的成绩信息。
(5)void Sort(LNode *p) 其功能是排序并展示若干个学生的成绩信息。
数据结构:
数据类型LNode定义如下:ﻫ typedef struct LNode
{
  int ID;
  char name[20];
int score1;
   int score2;
int score3;
int total;
   struct LNode *next;
}LNode,*LinkList;
数据结构课程设计报告
数据结构课程设计报告
数据结构课程设计报告
源程序:
源代码
//main。c
#include 〈stdio。h>
#include 〈stdlib.h>
typedef struct LNode
{
int ID;
   char name[20];
int score1;
  int score2;
  int score3;
int total;
struct LNode *next;
}LNode,*LinkList;
LinkList Creat(LinkList T,int n);
void Delete(LinkList T);
void Inquiry(LinkList T);
void Insert(LinkList T,int n);
void Sort(LNode *p);
void Insert(LinkList T,int n)
{
   int i;
LNode *r=T,*p;
 while((r-〉next)!=NULL)
  {
     r=r—>next;

 for(i=0;i〈n;i++)
   {
  p=(LNode *)malloc(sizeof(LNode));
 printf(”Please enter the student's student