demo2023--midexam

1

数据结构》期中上机测试试题
时间:2023-11- 16 10:00-12:00
试题1:(50分)
2022级四个专业学生参加迎新晚会,并随机到达会场。作为晚会组织者,请将他们按专业安排座位:
1. 学生学号均为三位整数:AI(1XX);计算机(2XX);数媒 3XX;信管(4XX)
2. 安排座位的规则:
1)同专业学生坐在一起,专业落座顺序是:AI、计算机、数媒、信管;
2)相同专业的同学,AI与数媒按照同学来的先后顺序正常安排;计算机和信管同学则后来的先安排,先来的后安排。
请使用计算机模拟输出上述安排座位过程。
示例:
从终端依次输入若干三位整数,模拟学生学号及到达顺序:432 234 345 123 444 145 213 223 346
输出按专业落座顺序:123 145 223 213 234 345 346 444 432

======
可不传截屏
数据从文件中读入,或内置数组,或者从终端读入均可

 队列与栈hhh

 2

试题2:(50分)
一组同学参加抢答比赛,抢答正确积1分,回答错误倒扣1分,不抢答不计分。比赛组织者根据学生的实时积分,动态调整每一位学生的位置,使学生的排列顺序始终按照积分多少倒序排列。
(1)开始比赛时所有学生被随机排成一列(每一位同学的积分均为0分);
(2)每一位同学抢答正确一次,其积分将增加1分;若回答错误,倒扣1分;
(3)每一次答题后,比赛组织者会马上根据当前每一位同学的积分调整他们的排列次序,使得积分越高的同学排在越靠前的位置(即:同学们始终按照积分降序排列);
请使用单链表模拟比赛过程和学生次序动态调整过程。
要求:
(1)每一位同学使用一个二元组表示:<人名,积分>;简单起见你可以使用一个字母代表人名,即该二元组数据类型为:<char, int>;
(2)从终端随机输入一组参赛同学,构建初始的学生单链表;
(3)从终端多次输入人名和抢答结果(该输入自行思考设计),模拟学生参与抢答过程,同时在学生链表中动态调整同学们的排列次序:积分越多的同学对应的结点将越靠近链表的头部;
(4)打印最后同学们按积分倒序排列结果;
Toy Example:
初始学生列表:
<A,0>,<C,0>,<D,0>,<X,0>,<E,0>,<F,0>
X抢答正确
<X,1>,<A,0>,<C,0>,<D,0>,<E,0>,<F,0>
C抢答正确
<X,1>,<C,1>,<A,0>,<D,0>,<E,0>,<F,0>
C抢答正确
<C,2>,<X,1>,<A,0>,<D,0>,<E,0>,<F,0>
A抢答错误
<C,2>,<X,1>,<D,0>,<E,0>,<F,0>,<A,-1>
……

 排序!必不可少!看来重要!加油!

单链表+排序

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值