数据结构课程设计报告

发布 2022-10-05 02:41:28 阅读 7448

一.课程设计概述:本次课程设计共完成三个题目:个人图书管理、多项式相加、学生成绩分析系统。

使用语言:c

编程环境:vc++6.0

2.课程设计题目。

个人图书管理。

1.问题描述:

学生在自己的学习和生活中会拥有很多的书籍,对所购买的书籍进行分类和统计是一种良好的习惯。可以便于对这些知识资料的整理和查询使用。如果用文件来存储相关书籍的各种信息,包括分类、购买日期、**、简介等等,辅之以程序来使用这些文件对里面的书籍信息进行统计和查询的工作将使这种书籍管理工作变得轻松而有趣。

2.基本要求:

1) 存储书籍各种相关信息。

2) 提供查找功能,按照多种关键字查找需要的书籍,查找成功后可以修改记录的相关项。

3) 提供排序功能,按照多种关键字对所有的书籍进行排序,例如按照**进行排序。

4) 其他辅助的维护工作。

3.分析:1)储存结构:

typedef struct

char number[10]; 图书编号。

char name[20书名。

char author[20作者名。

int time购买时间。

int price购买**。

mybook

typedef struct

int count图书总量。

mybook book[100];

mylibrary;

2)函数设计:

void s**e( )通过对文件的操作实现书籍各种信息的保。

void putin() 实现数据输入。

void lookup() 实现对书籍信息的浏览,输出。

void search() 调用另两个查找子函数。

void serach_by_name() 实现对书名查找,查找方法为顺序查找。

void search_by_author(),实现对作者名查找,查找方法为顺序查找。

void del() 根据编号查找删除数据。

void update() 根据编号查找修改数据。

4.流程图:

5.测试数据及结果:

操作菜单:输入数据后,进行作者名查找:

多项式相加。

1.问题描述。

设计一个一元稀疏多项式简单计算器。

2.基本要求。

一元稀疏多项式简单计算器的基本功能是:

1) 输入并建立多项式;

2) 输出多项式,输出形式为整数序列:n,c1,e1, c2,e2,,,cn,en,其中n是多项式的项数,ci,ei,分别是第i项的系数和指数,序列按指数降序排序;

3) 多项式a和b相加,建立多项式a+b;

4) 多项式a和b相减,建立多项式a-b;

5) 计算多项式相加相减后的值;

3.分析。1)储存结构。

typedef struct node //创立链表节点。

float c; /系数。

int e; /指数。

struct node *next;

dnode;

2)函数设计。

dnode *creat() 利用链表建立多项式,存放每项系数,指数。

void swap(dnode *p,dnode *q) 实现两个节点的对调。

void sort(dnode *h) 利用冒泡排序法,根据指数,从低到高排列。

dnode *con(dnode *a,dnode *b) 实现两个多项式运算。

void disp(dnode *h) 用降幂的格式,输出运算后的多项式。

4.测试数据及结果:

运算 (x+x3)+(x-x3)=0

运算(2x4+6x2)+(3x4)=5x4+6x2

学生成绩分析系统。

1.问题描述:

录入、保存一个班级学生多门课程的成绩,并对成绩进行分析。

2.基本要求。

1)通过键盘输入各学生的多门课程的成绩,建立相应的文件。

2)对文件中的数据进行处理,具有如下功能:

1) 按各门课程成绩排序,并生成相应的文件输出。

2) 计算每人的平均成绩,按平均成绩排序,并生成文件。

3) 求出各门课程的平均成绩、最高分、最低分、不及格人数、60~69分人数、70~79分人数、80~89分人数、90分以上人数。

4) 根据姓名或学号查询某人的各门课成绩,重名情况也能处理。

3.分析。储存结构:

typedef struct

int number; /学生学号。

char name[maxsize1]; 学生姓名。

int pro[5每门课程成绩。

node;typedef struct

node stu[maxsize2];

int num学生总人数。

md;函数设计:

md creat() 建立每个学生基本信息,保存成绩。

void disp(md a) 输出学生成绩信息。

void sort(md a,int m) 利用直接插入排序将成绩从高到底排序。

void fun1(md a) 提供菜单,可选择要进行排序分析的科目。

void fun2(md a) 提供菜单,可选择要计算平均分的科目。

void find_nu(md a,int b) 根据学号查询,输出学生成绩信息。

void find_na(md a,char ch)根据学生姓名查询,输出学生成绩信息。

void fun3(md a) 提供选择菜单,选择查询方式。

4.流程图:

5.测试数据及结果:

分析平均成绩:

根据学号进行查询:

2]石强数据结构实验指导中国铁道出版社2024年。

3]李春葆数据结构教程上机实验指导清华大学出版社2024年。

4]苏仕华数据结构课程设计机械工业出版社 2024年。

数据结构课程设计报告

东莞理工学院城市学院。题目 二叉排序树 专业 计算机科学与技术 本 年级 2010级计算机科学与技术专业 1 班。个人姓名 何振江。指导教师 张娟老师 时间 2010至2011第二学期第18周 地点 实验楼615机房 东莞理工学院城市学院计算机与信息科学系制。2011年 6月。实习报告的内容。一 问...

数据结构课程设计报告

设计一个校园导游程序,为来访的客人提供信息查询服务。1 设计学校的校园平面图。选取若干个有代表性的景点抽象成一个无向带权图 无向网 以图中顶点表示校内各景点,边上的权值表示两景点之间的距离。2 存放景点代号 名称 简介等信息供用户查询。3 为来访客人提供图中任意景点相关信息的查询。4 为来访客人提供...

数据结构课程设计报告

河北科技大学。课程设计报告。学生姓名学号。专业班级。课程名称数据结构。学年学期 2 012 2 013学年第 2 学期指导教师 黄春茹。2 0 13年 6 月。课程设计成绩评定表。一 数据结构课程设计目标。二 问题描述。三 需求分析。四 概要设计。五 详细设计。六 软件说明书 给出软件如何使用,使用...