C语言实现教学计划编制问题,Dev C++编译器下可运行(240606最新更新)

news2024/11/25 18:59:58

背景:

问题描述

大学的每个专业都要编制教学计划。假设任何专业都有固定的学习年限,每学年含两学期,
每学期的时间长度和学分上限都相等。每个专业开设的课程都是确定的,而且课程的开设时间的安排必须满足先修关系。
每个课程的先修关系都是确定的,可以有任意多门,也可以没有。每一门课程恰好一个学期。
试在这样的情况下设置一个教学计划编制程序。

在大学的某个专业中选取几个课程作为顶点,通过各门课的先修关系来构建个图,

该图用邻接表来存储,邻接表的头结点存储每门课的信息。

本程序的目的是为用户编排课程,根据用户输入的信息来编排出每学期要学的课程。

功能描述

输入参数包括:
学期总数,一学期的学分上限,
每门课的课程号(固定占3位的字母数字串)、学分和直接先修课的课程号。

允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习负担尽量均匀;二是使课程尽可能地集中在前几个学期中。
若根据给定的条件问题无解,则报告适当的信息;否则将教学计划输出到用户指定的文件中。
计划的表格格式自行设计。

测试数据 

学期总数:65        学分上限:103 
该专业共开设12门课,课程号从01~12,学分顺序为2,3,4,2,2,4,4,4,7,5,2,3。

过程:

测试数据

学分顺序为2,3,4,2,2,4,4,4,7,5,2,3

先修关系如下

课程编号 课程名称 先决条件
C1 程序设计基础 无
C2 离散数学 C1
C3 数据结构 C1,C2
C4 汇编语言 C1
C5 语言的设计和分析 C3,C4
C6 计算机原理 C11
C7 编译原理 C5,C3
C8 操作系统 C3,C6
C9 高等数学 无
C10 线性代数 C9
C11 普通物理 C9
C12 数值分析 C9,C10,C1

1-学习负担尽量均匀运行结果

各学期负担集中

2-尽可能集中在前几个学期

源码获取

欢迎大家点赞、收藏、关注、评论、批评啦 、查看👇🏻👇🏻获取联系方式👇🏻👇🏻

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1795747.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

最优化练习题

def f(x):return x*x-4*x5 a0,b01,31、均匀搜索 令 δ ( b 0 − a 0 ) / N , a i a 0 i δ , i 1 , 2 , 3 \delta(b_0-a_0)/N,a_ia_0i\delta,i1,2,3 δ(b0​−a0​)/N,ai​a0​iδ,i1,2,3 while b0-a0>0.1:anp.linspace(a0,b0,5)for i in range(1,4):if f(a[i-1])>f…

宝兰德受邀出席第八届丝绸之路网络安全论坛

近日,2024第八届丝绸之路网络安全论坛在陕西宾馆会议中心成功举办,本次论坛以“汇聚万千智慧 夯实安全堤坝”为主题,由主论坛及密码技术与密评、教育行业网络安全、卫健行业网络安全三个平行分论坛组成,论坛邀请业内专家学者、企业…

Pinia(三): 了解和使用state

1.state state 就是我们要定义的数据, 如果定义 store 时传入的第二个参数是对象, 那么 state 需要是一个函数, 这个函数的返回值才是状态的初始值.这样设计的原因是为了让 Pinia 在客户端和服务端都可以工作 官方推荐使用箭头函数(()>{ })获得更好的类型推断 import { de…

如何在Windows 10和11上修复DISM错误87?这里提供办法

​在电脑上运行DISM命令时,是否收到“错误代码87”消息?这是一个非常常见的错误,你可以轻松地修复它。我们将向你展示在Windows 11或Windows 10计算机上解决此问题的多种方法。 确保键入正确的命令 运行DISM命令时出现错误代码87的最常见原因是键入的命令不正确。你可能添…

【数据结构与算法 | 二叉树篇】二叉树的前中后序遍历(迭代版本)

1. 前言 前文我们实现了二叉树前中后三种遍历方式的递归版本,非常简单. 接下来我们来实现一下其迭代版本. 2. 二叉树的前序遍历 (1). 题 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root [1,null,2…

【简单讲解下TalkingData】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共…

六位一线AI工程师总结Agent构建经验,天工SkyAgents的Agent构建实战。

原文链接:(更好排版、视频播放、社群交流、最新AI开源项目、AI工具分享都在这个公众号!) 六位一线AI工程师总结Agent构建经验,天工SkyAgents的Agent构建实战。 🌟我们给人类新手明确的目标和具体的计划&am…

ATFX汇市:加拿大央行已宣布降息25基点,欧央行降息预期大幅增强

ATFX汇市:加拿大中央银行6月利率决议宣布,将政策利率下调25个基点至4.75%,时隔4年零三个月后再次进入降息周期。以2023年7月份加拿大央行最后一次加息算起,5.5%的高利率维持了11个月,期间加拿大的核心通胀率从6.2%降低…

UE5刷植物悬空了

UE5系列文章目录 文章目录 UE5系列文章目录前言一、解决办法 前言 在Unreal Engine5.3中使用植物模式刷各种植物时,有时会发现有的植物要么悬空,要不有刷不上地板的情况。而且悬空的植物还不能接触到地面,感觉很奇怪,就像下图所示…

如何减少Apache Spark日志的数量

修改log4j配置文件,没有就创建: 内容: # 设置日志记录器 log4j.rootCategoryWARN, console log4j.appender.consoleorg.apache.log4j.ConsoleAppender log4j.appender.console.targetSystem.err log4j.appender.console.layoutorg.apache.lo…

数学题目系列(一)|丑数|各位和|埃氏筛|欧拉筛

一.丑数 链接:丑数 分析: 丑数只有2,3,5这三个质因数,num 2a 3b 5c也就是一个丑数是由若干个2,3,5组成,那么丑数除以这若干个数字最后一定变为1 代码 class Solution {publi…

27-unittest之断言(assert)

在测试方法中需要判断结果是pass还是fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert)。 使用unittest测试框架时,有很多的断言方法,下面介绍几种常用的断言方法:assertEqual、assert…

基于javacv ffmpeg 使用原生ffmpeg命令

基于javacv ffmpeg 使用原生ffmpeg命令 1. ffmpeg2. ffprobe 相关阅读: javacv ffmpeg使用笔记 测试过程中,发现ffmpeg-6.0-1.5.9-linux-x86_64.jar 存在问题(ffmpeg原生命令执行失败),降级到ffmpeg-5.1.2-1.5.8-linux…

【Python报错】已解决ValueError: If using all scalar values, you must pass an index

成功解决“ValueError: If using all scalar values, you must pass an index”错误的全面指南 在Pandas库中,当你尝试创建一个新的DataFrame或Series时,如果所有值都是标量(scalar,即单个值而非列表、数组或Series)…

Vuforia AR篇(六)— Mid Air 半空识别

目录 前言一、什么是Mid Air?二、使用步骤三、示例代码四、效果 前言 增强现实(AR)技术正在改变我们与数字世界的互动方式。Vuforia作为先进的AR开发平台,提供了多种工具来创造引人入胜的AR体验。其中,Mid Air功能以其…

UE5-AI

AI角色 角色控制器 AI角色必须要一个角色控制器 角色控制器最基本只需要执行行为树,在EventOnPossess后runBehaviorTree 如果要的是一个角色,可以创建一个Character,在类默认设置中可以找到 Pawn->AIControllerClass,在这里…

Linux网络的DHCP配置

文章目录 DHCP配置DHCP流程简述DHCP优点DHCP的分配方式DHCP的租约过程DHCP配置实验实验1实验2 DHCP配置 DHCP:动态主机配置协议 服务端和客户端 服务端:server,提供某种特定的服务 客户端:client,使用服务端提供的服…

代码随想录第26天|回溯part6 不需要搜索整棵树的回溯二维搜索

332.重新安排行程 难题&#xff0c;自己写的代码没过&#xff0c;但我认为逻辑没有问题 class Solution { public:vector<string> res;bool pruning(vector<string> res, vector<string> path) {if (res.size() 0)return true;bool check false;for (int …

fastapi学习前置知识点

前置知识点 FastApi&#xff1a;一个用于构建API的现代、快速&#xff08;高性能&#xff09;的web框架。 FastApi是建立在Pydantic和Starlette基础上&#xff0c;Pydantic是一个基于Python类型提示来定义数据验证、序列化和文档的库。Starlette是一种轻量级的ASGI框架/工具包…

Matlab|【重磅】配电网故障重构/孤岛划分

目录 1 主要内容 1.1 背景 1.2 流程图 2 部分代码 3 程序结果 4 下载链接 1 主要内容 程序主要复现《基于GA_BFGS算法的配电网故障恢复性重构研究_郑海广》&#xff0c;采用matlab编程软件实现&#xff0c;依据网络结构和DG供电方式对配电网进行孤岛划分&#xff0c;将含…