




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
教学计划编制问题篇一:教学计划编制问题目 录摘 要 . 1前 言 . 2正 文 . 3 1.2.3.4.5.6. 问题描述 . 3 逻辑设计 . 3 详细设计 . 6 称序编码 . 11 程序调试与测试 . 14 软件安装和使用说明书 . 15设 计 总 结 . 16参考文献 . 17致 谢 . 18摘 要大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限值均相等。每个专业开设的课程都是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。关键词:数据、结构、教学、计划前 言随着科学技术和市场经济的迅速发展,技术和产品的生命周期日益缩短,市场需求日益多样化和个性化,社会对人才的需求也越来越呈现多样化、专业化和个性化1-2。高等学校学历教育的主要任务是传授专业基础知识、培养可持续发展的综合素质。学生毕业后,面对瞬变的人才市场,常感到无所适从,而企业方面又常感到合适的人才难求。顺应社会的需求,针对具体行业需求的定制式教学悄然兴起。 近年来,伴随着经济发展轨道的变化,广东省的一些企业向高校提出了定制式教学培训的要求。例如某摩托车生产企业为了开拓海外市场,要对原产品进行改造,要求开设机械设计理论课程,主要目的是提高技术队伍人员的动力学分析与综合水平。定制式教学需求属于同一工程领域,教学目标呈现多样化特征,所需基础涉及若干门课程,但不是这些课程的简单组合,亦无法照搬学校现成的教学计划。为了迅速响应社会需求,需要研究面向定制式教学的多样化教学计划设计方法。正 文1. 问题描述根据问题描述及要求,可知设计中需要定义先修关系的AOV网图中的顶点及弧边的结构体,在运行结果中将图的信息显示出来,利用先修关系将课程排序,最后解决问题输出每学期的课程。采用第二种策略:使课程尽可能地集中在前几个学期中;根据教学计划中的课程及其关系和学分定义图的顶点和边的结构体创建图GrateGraph():结合先修关系的AOV网,显示代号所对应课程及课程的先修课程拓扑排序TopologicalOrder (G):将课程排序后并决定出每学期所学课程,输出图G的信息Display(G):将图的顶点和弧边输出 。(1)输入参数包括:学期总数,一学期的学分上限,每门课的课程号(固定占3位的字母数字串)学分和直接先修课的课程号。(2)允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习负担尽量均匀;二是使课程尽可能地集中在前几个学期中。(3)若根据给定的条件问题无解,则报告适当的信息;否则将教学计划输出到用户指定的文件中。计划的表格格式自行设计2. 逻辑设计CreatGraph(ALGraph *G)/构件图(如下右图)void FindInDegree(ALGraph G, int indegree)/求图中各节点的入度(如下左图)void TopologicalSort_1(ALGraph G,int numterm,int uplcredit)/有向图G采用邻接表存储结构(如下左图)void TopologicalSort_2(ALGraph G,int numterm,int uplcredit)/有向图G采用邻接表存储结构(如下右图)篇二:教学计划编制问题课程设计报告课程设计(论文)题 目 名 称教学计划编制问题课 程 名 称 学 生 姓 名 学 号 系 、专 业信息工程系、通信工程类指 导 教 师2012年 12 月 23 日摘 要教学计划是学校保证教学质量和人才培养的关键,也是组织教学过程、安排教学过程、安排教学任务、确定教学编制的基本依据和课程安排的具体形式。是稳定教学秩序、提高教学质量的重要保证。从教学计划的设计、实施等方面,阐明了如何搞好教学管理,从而为提高教学质量提供保证。随着教育改革的不断深入和社会发展的需要,原旧的教学计划在定位上的方向性偏差,已经不再适应社会的需求。因此,应重视教学计划的改革和修订工作,以确保教育教学质量,提高教育教学水平。教学计划编制中的思路:一是明确培养目标;二是注重学科设置的整体性、统一性和灵活性、全面性;三是与学分制改革有机结合。教学计划是高校实施常规教学活动的基本管理文档,由于传统的手工编制方式存在诸多弊端,开发基于Web应用程序形式的教学计划编制系统具有很好的应用价值。使用C程序设计语言,研究开发教学计划编制系统Web应用系统。关键词: 教学计划;编制;培养目标;管理目 录1 问题描述 -1 2 需求分析 -2 3 概要设计 - 231抽象数据类型定义 - 2 32模块划分 - 3 4 详细设计 - 341数据类型的定义 - 4 42主要模块的算法描述 - 5 5 测试分析 - 8 6 课程设计总结 - 106.1问题和解决的方法及经验教训、心得体会 10 6.2 致谢 - 11 参考文献 - 11 附录(源程序清单) - 121 问题描述大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限值均相等,每个专业开设的课程都是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。 基本要求(1)输入参数包括:学期总数,一学期的学分上限,每门课的课程号(固定占3位的字母数字串)、学分和直接先修课的课程号。(2)允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习负担尽量均匀;二是使课程尽可能地集中在前几个学期中。(3)若根据给定的条件问题无解,则报告适当的信息;否则将教学计划输出到用户指定的文件中。计划的表格格式自行设计。 测试数据学期总数:6;学分上限:10;该专业共开设12门课,课程号从C01到C12,学分顺序为2,3,4,3,2,3,4,4,7,5,2,3。先修关系如下:2 需求分析大学的每个专业都要编制教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限都相等。每个专业开设的课程都是确定的,而且课程的开设时间的安排必须满足先修关系。每个课程的先修关系都是确定的,可以有任意多门,也可以没有。每一门课程恰好一个学期。试在这样的情况下设置一个教学计划编制程序。在大学的某个专业中选取几个课程作为顶点,通过各门课的先修关系来构建个图,该图用邻接表来存储,邻接表的头结点存储每门课的信息.本程序的目的是为用户编排课程,根据用户输入的信息来编排出每学期要学的课程.针对计算机系本科课程,根据课程之间的依赖关系(如离散数学应在数据结构之前开设)制定课程安排计划,并满足各学期课程数目大致相同,而且课程在开设时间的安排必须满足先修关系。输入参数包括:学期总数,一学期的学分上限,每门课的课程号(固定占3位的字母数字串)、学分和直接先修课的课程号。3 概要设计31抽象数据类型定义 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篇三:教学计划编制问题一、设计内容与设计要求1设计内容:1)问题描述大学的每个专业都要制订教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限均相等。每个专业开设的课程都是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。2)基本要求a.输入参数包括:学期总数,一学期的学分上限,每门课的课程号(固定占3位的字母数字串)、学分和直接先修课的课程号。b.允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习负担尽量均匀;二是使课程尽可能地集中在前几个学期中。c.若根据给定的条件问题无解,则报告适当的信息;否则,将教学计划输出到用户指定的文件中。计划的表格格式自行设计。3)测试数据学期总数:6;学分上限:10;该专业共开设课数:12课程号:从C01到C12;#includemath.h / floor(),ceil(),abs()#includeprocess.h / exit()#includeiostream.h / cout,cin/ 函数结果状态代码#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1typedef int Status; / Status是函数的类型,其值是函数结果状态代码,如OK等 typedef int Boolean; / Boolean是布尔类型,其值是TRUE或FALSE#define MAX_NAME 10/* 顶点字符串的最大长度*/#define MAXCLASS 100int Z=0;int X=0;int xqzs,q=1,xfsx;typedef int InfoType;typedef char VertexTypeMAX_NAME; /* 字符串类型*/* 图的邻接表存储表示*/#define MAX_VERTEX_NUM 100typedef enumDGGraphKind; /* 有向图,有向网,无向图,无向网 */typedef struct ArcNodeint adjvex; /* 该弧所指向的顶点的位置*/struct ArcNode *nextarc; /* 指向下一条弧的指针*/InfoType *info; /* 网的权值指针)*/ArcNode; /* 表结点*/typedef structVertexType data; /* 顶点信息*/ArcNode *firstarc; /* 第一个表结点的地址,指向第一条依附该顶点的弧的指针*/ VNode,AdjListMAX_VERTEX_NUM; /* 头结点*/typedef structAdjList vertices,verticestwo;int vexnum,arcnum; /* 图的当前顶点数和弧数*/int kind; /* 图的种类标志*/ALGraph;/* 图的邻接表存储的基本操作*/int LocateVex(ALGraph G,VertexType u) /* 初始条件: 图G存在,u和G中顶点有相同特征*/* 操作结果: 若G中存在顶点u,则返回该顶点在图中位置;否则返回-1 */int i;for(i=0;iG.vexnum;+i)if(strcmp(u,G.verticesi.data)=0)return i;return -1;Status CreateGraph(ALGraph *G) /* 采用邻接表存储结构,构造没有相关信息的图G(用一个函数构造种图) */ int i,j,k;VertexType va,vb;ArcNode *p;printf(请输入教学计划的课程数: );scanf(%d,&(*G).vexnum);printf(请输入拓扑排序所形成的课程先修关系的边数: );scanf(%d,&(*G).arcnum);printf(请输入%d个课程的代表值(%d个字符):n,(*G).vexnum,MAX_NAME); for(i=0;i(*G).vexnum;+i) /* 构造顶点向量*/ scanf(%s,(*G).verticesi.data);(*G).verticesi.firstarc=NULL;printf(请输入%d个课程的学分值(%d个字符):n,(*G).vexnum,MAX_NAME); for(i=0;i(*G).vexnum;+i) /* 构造顶点向量*/scanf(%s,(*G).verticestwoi.data);printf(请顺序输入每条弧(边)的弧尾和弧头(以空格作为间隔):n);for(k=0;k(*G).arcnum;+k) /* 构造表结点链表*/ scanf(%s%s,va,vb);i=LocateVex(*G,va); /* 弧尾*/j=LocateVex(*G,vb); /* 弧头*/p=(ArcNode*)malloc(sizeof(ArcNode);p-adjvex=j;p-info=NULL; /* 图*/p-nextarc=(*G).verticesi.firstarc; /* 插在表头*/(*G).verticesi.firstarc=p;return OK;void Display(ALGraph G) /* 输出图的邻接矩阵G */int i;ArcNode *p;switch(G.kind)case DG: printf(有向图n);printf(%d个顶点:n,G.vexnum);for(i=0;iG.vexnum;+i)printf(%s ,G.verticesi.data);printf(n%d条弧(边):n,G.arcnum);for(i=0;iG.vexnum;i+)p=G.verticesi.firstarc;while(p)printf(%s%s ,G.verticesi.data,G.verticesp-adjvex.data); p=p-nextarc;printf(n);void FindInDegree(ALGraph G,int indegree) /* 求顶点的入度,算法调用*/int i;ArcNode *p;for(i=0;iG.vexnum;i+)indegreei=0; /* 赋初值*/for(i=0;iG.vexnum;i+)p=G.verticesi.firstarc;while(p) indegreep-adjvex+;p=p-nextarc;typedef int SElemType; /* 栈类型*/*栈的顺序存储表示*/#define STACK_INIT_SIZE 10 /* 存储空间初始分配量*/#define STACKINCREMENT 2 /* 存储空间分配增量*/typedef struct SqStackSElemType *base; /* 在栈构造之前和销毁之后,base的值为NULL */SElemType *top; /* 栈顶指针*/int stacksize; /* 当前已分配的存储空间,以元素为单位*/SqStack; /* 顺序栈*/* 顺序栈的基本操作*/Status InitStack(SqStack *S) /* 构造一个空栈S */(*S).base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType); if(!(*S).base)exit(OVERFLOW); /* 存储分配失败*/(*S).top=(*S).base;(*S).stacksize=STACK_INIT_SIZE;return OK;void ClearStack(SqStack *S) /清空栈的操作S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 实验小学突发停电事故应急预案10篇
- 水表井安全知识培训内容课件
- 人防物资调配与储存管理方案
- 小学五年级英语上册Unit5单元重难点知识速记与巧练(含答案)
- 氢能产业园氢能燃料电池商业化推广策略
- 隧道水文勘察与分析
- 学生宿舍节能减排技术应用方案
- 建筑工程项目施工现场卫生管理方案
- 水电站安全知识培训内容课件
- 知识点3.2造型要素设计构成设计造型75课件
- 生物制品生产工艺过程变更管理技术指导原则
- 建筑施工现场签证单(模板)
- GBZ(卫生) 49-2014职业性噪声聋的诊断
- GB/T 9729-2007化学试剂氯化物测定通用方法
- GB/T 7588.2-2020电梯制造与安装安全规范第2部分:电梯部件的设计原则、计算和检验
- GB/T 13560-2017烧结钕铁硼永磁材料
- 三视图及尺寸标注课件
- 混凝土配合比验证检验委托书模板
- 住房公积金投诉申请书
- 众辰变频器说明书3400
- 小学教师量化考核表
评论
0/150
提交评论