资源预览内容
第1页 / 共63页
第2页 / 共63页
第3页 / 共63页
第4页 / 共63页
第5页 / 共63页
第6页 / 共63页
第7页 / 共63页
第8页 / 共63页
第9页 / 共63页
第10页 / 共63页
亲,该文档总共63页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据结构教学计划编制(共5篇) 第1篇:数据结构课程设计教学计划编制攀枝花学院课程设计论文 教学计划编制问题摘 要教学计划(课程计划)是课程设置的整体规划,它规定不同课程类型相互结构的方式,也规定了不同课程在管理学_方式的要求及其所占比例,同时,对学校的教学、生产劳动、课外活动等作出全面安排,具体规定了学校应设置的学科、课程开设的顺序及课时分配,并对学期、学年、假期进行划分。根据一定的目的和培养目标制定的教学和工作的指导文件。它决定着教学内容总的方向和总的结构,并对有关学校的教学、活动,生产劳动和课外活动校外活动等各方面作出全面安排,具体规定一定学校的学科设置、各门学科的教学顺序、教学时数以及各种活动等。教学计划、教学大纲和教科书互相联系,共同反映教学内容。近代以来,特别是在实行学科课程的条件下,教学计划主要是学科的计划,或只是学科表。随着社会经济和科学技术的新发展,结构不断发生变革,现代和教学理论主张对教学计划的结构实行改革。除了教学以外,生产劳动、科技活动、发展体力和增进健康的活动、艺术活动和社会活动等也应列入教学计划。下面就利用对此进行程序设计,已达到预期的目的。关键字:数据结构,教学计划编制,抽象数据类型,程序设计- 1攀枝花学院课程设计论文 教学计划编制问题2.概要设计:2.1流程图void FindInDegree(ALGraph G, int indegree)/求图中各节点的入度(如下左图)void CreatGraph(ALGraph *G)/构件图(如下右图)。void TopologicalSort_1(ALGraph G,int numterm,int uplcredit) /有向图G采用邻接表存储结构(如下左图);void TopologicalSort_2(ALGraph G,int numterm,int uplcredit) /有向图G采用邻接表存储结构(如下右图)。攀枝花学院课程设计论文 教学计划编制问题主函数: void main()- 4攀枝花学院课程设计论文 教学计划编制问题数据关系:R1=ai-1 ai|ai-1,aiD,i=2,n 基本操作: void InitStack (SqStack *S); int StackEmpty(SqStack S); void Push(SqStack *S, int ); int Pop(SqStack *S, int *e); ADT Stack 2.3主程序int main() /主函数 int numterm; /学期总数int uplcredit; /一个学期的学分上限 int selectway; ALGraph G; printf(请输入学期总数:n); scanf(%d, printf(请输入一个学期的学分上限:n); scanf(%d, CreatGraph( printf(请选择编排策略:1.课程尽可能集中到前几个学期;2.课程尽量均匀分布n); scanf(%d, if(selectway=1) TopologicalSort_1(G,numterm,uplcredit); if(selectway=2) TopologicalSort_2(G,numterm,uplcredit); system(pause); return 0; 2.4本程序只有两个模块,调用关系简单主程序模块拓扑排序模块攀枝花学院课程设计论文 教学计划编制问题4.详细设计4.1头结点、表结点、邻接表的定义#define MAX_VERTEX_NUM 100 /最大课程总数 typedef struct ArcNode int adjvex; struct ArcNode *nextarc; ArcNode; typedef struct VNode char name24; /课程名 int claid; /课程号 int credit; /课程的学分 int indegree; /该结点的入度 int state; /该节点的状态ArcNode *firstarc; /指向第一条依附该顶点的弧的指针 VNode,AdjListMAX_VEXTEX_NUM; typedef struct AdjList vertices; int vexnum, arcnum; ALGraph; 邻接表的基本操作:void CreatGraph(ALGraph *); 创建邻接表void FindInDegree(ALGraph , int * ); 求一个结点的入度void TopologicalSort_1(ALGraph G,int numterm,int maxcredit); 拓扑排序来编排课程void TopologicalSort_2(ALGraph G,int numterm,int maxcredit); 拓扑排序来编排课程4.2栈的定义#define STACk_INIT_SIZE 100 /存储空间的初时分配量 #define STACKINCREMENT 10 /存储空间的分配增量- 789101112131415攀枝花学院课程设计论文 教学计划编制问题6.调试分析6.1实验过程中出现的问题及解决方法我们在实验过程中遇到的最大难题是两个课程排序算法的编写。刚开始的时候没有任何的思路,网上也只有拓扑排序的算法,对于课程设计要求的排序算法没有任何头绪。经过请教老师和同学以及翻阅了一些相关书籍,并在网上的搜索有了排序算法的大体思路。经过三天的修改,终于写出了符合要求的排序算法。6.2测试数据学期总数:6;学分上限:10;该专业共开设12门课,课程号从01到12,学分顺序为2,3,4,3,2,3,4,4,7,5,2,3。6.3测试结果(包含正确和错误的)正确测试结果:攀枝花学院课程设计论文 教学计划编制问题错误测试结果:攀枝花学院课程设计论文 教学计划编制问题6.4测试数据及程序运行情况输入的内容如下: 课程编号 课程名称 学分 先决条件 01 程序设计基础 2 无 02 离散数学 3 01 03 数据结构 4 01,02 04 汇编语言 3 01 05 语言的设计和分析 2 03,04 06 计算机原理 3 11 07 编译原理 4 05,03 08 操作系统 4 03,06 09 高等数学 7 无 10 线性代数 5 09 11 普通物理 2 09 12 数值分析 3 09,10,01 两种编排方法都输出结果为: 第一学期学的课程有:高等数学 程序设计基础; 第二学期学的课程有:普通物理 线性代数 汇编语言; 第三学期学的课程有:数值分析 计算机原理 离散数学; 第四学期学的课程有:数据结构;攀枝花学院课程设计论文 教学计划编制问题第五学期学的课程有:操作系统 语言的设计和分析; 第六学期学的课程有:编译原理。7.实验分工8.总结刚开始学的时候确实有很多地方我很不理解,每次上课时老师都会给我们出不同的设计题目,对于我们一个初学者来说,无疑是一个具大的挑战,撞了几次壁之后,我决定静下心来,仔细去写程序。老师会给我们需要编程的内容一些讲解,顺着老师的思路,来完成自己的设计,我们可以开始运行自己的程序,可是好多处的错误让人看的可怕,还看不出到底是哪里出现了错误,但是程序还是得继续下去,我多次请教了老师和同学,逐渐能自己找出错误,并加以改正。经过了这次课程设计,现在已经可以了解很多错误在英文里的提示,这对我来说是一个突破性的进步,眼看着一个个错误通过自己的努力在我眼前消失,觉得很是开心。此次的程序设计能够成功,是我和我的同学三个人共同努力作用的结果。在这一段努力学_的过程中,我们的编程设计有了明显的提高。其实现在想起来,收获还真是不少,虽然说以前非常不懂这门语言,在它上面花费了好多心血,觉得它很难,是需用花费了大量的时间编写出来的。现在真正的明白了一些代码的应用,每个程序都有一些共同点,通用的结构,相似的格式。同时也对教学编制问题有了进一步的认识。只要努力去学_,就会灵活的去应用它。9.参考文献1数据结构(C语言版),严蔚敏,清华大学出版社,。攀枝花学院课程设计论文 教学计划编制问题2数据结构题集,严蔚敏,清华大学出版社,。 3数据结构(C语言版),刘大有,高等出版社,。 4Data Structure with C+,William FordWilliam Topp,清华大学出版社,。第2篇:数据结构程设计教学计划编制问题数据结构课程设计报告题目:教学计划编制一.需求分析(1)实验内容和实验目的:1.大学的每个专业都要编制教学计划。假设任何专业都有固定的学_年限,每学年含两学期,每学期的时间长度和学分上限都相等。每个专业开设的课程都是确定的,而且课程的开设时间的安排必须满足先修关系。每个课程的先修关系都是确定的,可以有任意多门,也可以没有。每一门课程恰好一个学期。试在这样的情况下设置一个教学计划编制程序。 2.在大学的某个专业中选取几个课程作为顶点,通过各门课的先修关系来构建个图,该图用邻接表来存储,邻接表的头结点存储每门课的信息.3.本程序的目的是为用户编排课程,根据用户输入的信息来编排出每学期要学的课程.(2)测试数据:学期总数:6;学分上限:10;该专业共开设12门课,课程号从01到12,学分顺序为2,3,4,3,2,3,4,4,7,5,2,3。先修关系见教科书图726。 (3)测试结果(包含正确和错误的): 正确测试结果:错误测试结果:二.概要设计1.抽象数据类型图的定义如下: ADT Graph 数据对象V:V是具有相同特性的数据元素的集合,称为顶点集.数据关系R:R=VRVR=(v,w)|v,wV,(v,w)表示v和w之间存在直接先修关系 基本操作P: void CreatGraph(ALGraph *); void FindInDegree(ALGraph , int * ); void TopologicalSort_1(ALGraph G,int numterm,int maxcredit); void TopologicalSort_2(ALGraph G,int numterm,int maxcredit); ADT Graph 栈的定义: ADT Stack数据对象:D=ai|aiElemSet,i=1,2,n,n=0数据关系:R1=ai-1 ai|ai-1,aiD,i=2,n 基本操作: void InitStack (SqStack *S); int StackEmpty(SqStack S); void Push(SqStack *S, int ); int Pop(SqStack *S, int *e); ADT Stack 2.主程序int main()/主函数 int numterm; /学期总数int uplcredit; /一个学期的学分上限int selectway;ALGraph G;printf(请输入学期总数:n);scanf(%d,printf(请输入一个学期的学分上限:n);scanf(%d,CreatGraph(printf(请选择编排策略:1.课程尽可能集中到前几个学期;2.课程尽量均匀分布n);scanf(
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号