首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
学生选课最多可以选3门,如果王同学选了3门C1、C2、C3后,想把C3换成C4,王同学就得先退选C3再申请选修C4。但是这个时候可能C4已经选满了,而王同学再选回C3的时候可能已经被人选满,不能再选了。为了解决这个问题,使用一个函数TradeCourse(
学生选课最多可以选3门,如果王同学选了3门C1、C2、C3后,想把C3换成C4,王同学就得先退选C3再申请选修C4。但是这个时候可能C4已经选满了,而王同学再选回C3的时候可能已经被人选满,不能再选了。为了解决这个问题,使用一个函数TradeCourse(
admin
2014-12-08
36
问题
学生选课最多可以选3门,如果王同学选了3门C1、C2、C3后,想把C3换成C4,王同学就得先退选C3再申请选修C4。但是这个时候可能C4已经选满了,而王同学再选回C3的时候可能已经被人选满,不能再选了。为了解决这个问题,使用一个函数TradeCourse(user,course1,course2)将课程course1换成course2。下面给出一种实现。如果不正确,给出所有错误的执行情况,并给出你认为正确的实现,要有适当的注释。
TradeCourse(user,course1,course2){
course1->p(); //申请课程coursel数据结构的互斥信号量
course1->drop(user); //退选课程course1
course2->p(); //申请课程course2数据结构的互斥信号量
if(course2->isFull()==false){ //课程course2没有选满
course2->add(user); //申请选修课程course2
course2->v(); //释放课程course2数据结构的互斥信号量
course1->v(); //释放课程course1数据结构的互斥信号量
}
}
选项
答案
该算法是错误的,若课程2选满,即course2->isFull=true,就会使得该学生有可能选不到3门课,因此要保证该同学在退选课程后,申请新课程失败的情况下,仍然可以选回原课程,即不同同学的退选和申请课程应该互斥进行,因此这里只要处理好course2->isFull=true的情况即可。 正确的算法如下: TradeCourse(user,coursel,course2){ course1->p(); //申请课程coursel数据结构的互斥信号量 course1->drop(user); //退选课程course1 course2->p(); //申请课程course2数据结构的互斥信号量 if(course2->isFull()==false){ //课程course2没有选满 course2一>add(user); //申请选修课程course2 course2->v(); //释放课程course2数据结构的互斥信号量 coursel->v(); //释放课程coursel数据结构的互斥信号量 } else{ course1>add(user); //重新选择course1 course2->v(); //释放课程course2数据结构的互斥信号量 course1->v(); //释放课程course1数据结构的互斥信号量 } }
解析
转载请注明原文地址:https://kaotiyun.com/show/ydxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
《吕氏春秋》载:“公作则迟,有所匿其力也;分地则速,无所匿其力也。”这条材料反映的实质问题是()。
第三次科技革命初期,苏联领先于美国的新兴科学技术成就是()。
对巴黎公社的评述,正确的有()。①是无产阶级建立政权的第一次伟大尝试②主要的经验是废除旧的国家机器,建立新的国家机器③其实践和经验,丰富了马克思主义理论④由于无产阶级的不成熟,其失败是不可避免的
列宁在()中系统地阐明了马克思主义的国家学说。
系统总结了6世纪以前黄河中下游地区农牧业生产经验的著作是()。
正式审议和通过了《关于建国以来党的若干历史问题的决议》,标志着党在指导思想上拨乱反正的历史任务的完成的会议是()。
马克思为第一国际起草的文件有()。①《共产党宣言》②《临时章程》③《成立宣言》④《资本论》
简述马克思主义在中国传播的本土化特点。
下列关于塞尔维乌斯改革的叙述错误的是()。
支持多道程序的操作系统,区别于其他操作系统的主要特征为()。
随机试题
Withtimeflying,peoplebecomeaged.Thenmanypeopleevenintheirmiddleageoftenstarttonoticethattheirmemoryandment
烧伤患者防治感染的措施中错误的说法是
爪形手不会出现在( )
根据《建筑法》规定,建筑施工企业在施工中偷工减料的,使用不合格的建筑材料、建筑构配件和设备的,()。
应当委托监理的工程是()。
在下列公司中,通常适合采用固定股利政策的是()。
累积故障(失效)公式表示正确的是()。
发送电子邮件时,通常使用的协议是(63),通常使用的端口号是(64)。
"Cool"isawordwithmanymeanings.Itstraditionalmeaningisusedto【B1】atemperaturethatisfairlycold.Astheworldhas
Ironically,intheUnitedStates,acountryofimmigrants,prejudiceanddiscriminationcontinuetobeseriousproblems.Therew
最新回复
(
0
)