- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
教学计划编排
实验题目:教学计划编排
班级:数学类2 姓名:史宝珠 学号:2011434066 日期:2011.12
一、需求分析
1.程序的基本功能
教学计划的制定就是合理的编排这些课程,使学生能够顺利的进行学习。这些课程中,有些课程是独立于其他课程的基础课,有些课程需要其他先行课程;一般4年制本科教学前7个学期(3年半)进行理论课程的学习,第8个学期实习;教学计划的编排必须充分考虑这些因素。
2.输入输出要求
假定学习年限是固定的,每学年包含两个学期,各专业开设的课程是确定的,每门课程是否有先修课、有几门先修课也是确定的。要求制定教学计划,合理的安排各学期开授的课程。要求各学期课程门数、学分的分布较均匀。
二、概要设计
1)程序模块:
(1)Void Information():
输依次输入课程的总数,AOV网中边的条数;
输入AOV网中各个顶点的信息;
输入该课程的课程名;
输入该课程的学分;
输入该课程的课序号;
输入该课程的入度;
如果此课程需要多个学期修完,请输入1;
如果不是请输入2;
(2)float Aov(int p,AOVGraph AOV[200],int b1,float sum2)
建立(运用拓扑排序)AOV网,从而将所有的信息以课表形式存储和显示。其中有对各种信息的输入,并且有建表的操作,将所有的内容有条理的存储和显示出来,使读者一目了然。(3)int main()::
主模块,通过对各个模块的调用实现教学计划的安排。
2)本程序所用的抽象数据类型的定义;
typedef struct node
{
int adjevx;
struct node *next;
}EdgeNode;
typedef struct vnode
{
int num; //课程号
char name[25]; //课程名
float chour; //学分
int indegree; //入度
char nature; //是否为选修课
char a1;
int a11;
int a12;
EdgeNode *firstedge;
}VNode;
typedef struct
{
VNode AdjList[MAX];
int n,e;
float sum;
}AOVGraph;
模块之间的层次关系
三、详细设计
1.采用C++语言定义相关的数据类型;
ifstream input_file; //文件输入流及对文件的建立
ofstream output_file; //文件输出流及对文件的读取
typedef struct node
{
int adjevx; /*邻接点域*/
struct node *next; /*指向下一个邻接点的指针域*/
}EdgeNode;
/*边表结点*/
typedef struct vnode /*顶点表结点*/
{
int num; /*课程号*/
char name[25]; /*课程名*/
float chour; /*课程学分*/
int indegree; /*顶点的入度*/
char vertex; /*顶点域*/
char nature; /*是否为选修课*/
char a1;
int a11;
int a12;
EdgeNode *firstedge;
}VNode; /*边表的头指针*/
typedef struct
{
VNode AdjList[MAX]; /*邻接表*/
int n; /*顶点数*/
int e; /*边数*/
float sum; /*总学分*/
}AOVGraph;
typedef struct
{
VNode AdjList[MAX];
int r;
int f;
}Queue;
Queue *p;
2.写出各模块的伪码算法;
Queue *Init_queue(Queue *p) //构建空的队列
{
p=(Queue *)malloc(sizeof(Queue));
p-f=p-r=-1; //运用头尾指针来判断队是否为空
return p;
}
int in_queue(Queue *p,VNode sr[MAX])
{
if(p-r==MAX-1)
{
cout队满不可以进行入对操作endl;
return -1;
}
else
{
p-r++;
p-AdjList[p
您可能关注的文档
- 常用对数及应用.ppt
- 常用EXCEL公式VLOOKUP函数用法详解.doc
- 常用开源NoSQL原理与应用.ppt
- 常用抗肿瘤药物致呕吐不良反应相关因素分析.pdf
- 平行双螺杆榨油机变速减速器设计及仿真分析.pdf
- 平板显示器中应用ACF的驱动IC封装技术.pdf
- 年龄对小家鼠筑巢的影响.doc
- 平衡阴阳针法对脑卒中后上肢痉挛的疗效分析.pdf
- 平顶山地区小儿脑性瘫痪的中西医结合治疗的临床观察_李君.pdf
- 并联型APF补偿电压源型非线性负载时谐波电流放大效应的研究.pdf
- 2024年江西省寻乌县九上数学开学复习检测模拟试题【含答案】.doc
- 2024年江西省省宜春市袁州区数学九上开学学业水平测试模拟试题【含答案】.doc
- 《GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语》.pdf
- 中国国家标准 GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语.pdf
- GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- 《GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构》.pdf
- 中国国家标准 GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 中国国家标准 GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 《GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南》.pdf
最近下载
- 小学一年级家长会语文老师PPT课件1_图文.ppt
- 奥鹏云南开放大学 小学语文案例教学(20秋)形考作业4(客观).doc VIP
- 沅陵大曲酒厂续建项目(重大变更) 环境影响报告书.pdf
- SH∕T 1541.1-2019 塑料颗粒外观试验方法 第1部分:目测法.pdf
- 泳池清洁机器人.pdf VIP
- 中职高考语文二轮复习写作技巧专项突破专题01 应用文写作-技巧与练习(含详解).docx VIP
- (人教版)数学三年级上册计算题“天天练”习题卡,含100份题组,附参考答案.doc
- 【新教材】人教PEP版(2024)三年级上册英语Unit 1 Making friends单元整体教学设计.docx
- 乡村学校德育工作实践.docx VIP
- “国家中小学智慧教育平台”培训方案(2).doc
文档评论(0)