试卷总分:100分
选择题 5题 10分
多选题 5题 20分
编程题 4题 70分
井冈山斗争时期,红军通信员为了防备敌人截获,将秘密口令分成了两段传递。请观察以下C++密码拼接程序,电报机的屏幕上最终会输出什么情报内容?
string s1="星火"; string s2="燎原"; cout << s1 + s2;
1935年长征途中,为防敌军无线电测向台测定我军位置,红军对电台发报有着极其严格的纪律。假设你正在编写发报机的控制程序,现有三个布尔(bool)变量代表当前状态:
has_intel:是否截获紧急情报
has_order:首长是否下达发报命令
enemy_listening:敌军测向台是否正在侦听
【核心军规】 只有满足条件:“(有紧急情报 或 首长下令) 且 (敌军测向台未侦听)”,才允许启动发报。
下列哪段 C++ 代码能正确实现这条严格的判断逻辑?
(多选)“红军不怕远征难,万水千山只等闲。” 二万五千里的长征奇迹,是红军战士用双脚一步一步走出来的。不积跬步,无以至千里。假设我们需要编写一个程序来记录红军战士的行军步数,定义了整型变量 int step = 0;。
为了记录新走的一步,我们需要让变量 step 的值增加 1。请问下列哪些 C++ 代码可以实现这一目标?
“兵马未动,粮草先行。”
长征途中,红军严格遵守“三大纪律八项注意”,在聘请老乡帮忙运输物资时,坚持买卖公平,绝不亏待群众。后勤部制定了一套标准的运费结算规则:
运费计算规则,为了合理分配体力与报酬:
输入一个整数 W 代表物资的重量,请编写程序帮助司务长计算并输出应支付的总运费。
一个整数 W(表示重量)。
一个整数(表示总运费)。
1≤W≤10^4
2
10
3
5
16
“风雨浸衣骨更硬,野菜充饥志越坚。”
红军长征过草地时,补给极其困难。每位战士身上的干粮(N)是走出草地的关键。
假设行军非常艰苦,消耗量随着体力的下降每天都在增加:
第 1 天行军消耗 1 份干粮;
第 2 天行军消耗 2 份干粮;
第 3 天行军消耗 3 份干粮……
以此类推,第 i 天需要消耗 i 份干粮。
每天清晨,战士会检查袋子里的剩余干粮。如果剩余量足够支付当天的消耗(即 N≥i),则继续坚持行军;如果不够,则意味着弹尽粮绝,必须等待救援。
输入一个整数 N,请计算战士靠这些干粮最多能完整行军多少天。
一个整数 N(初始干粮总数)。
一个整数(完整行军的天数)。
1≤N≤10^9
7
4
100000
446
“红军的眼睛和耳朵,决胜于千里之外。”
在长征途中,红军的无线电侦察台屡建奇功。他们夜以继日地监听敌人的电台信号,从嘈杂的电波中捕捉关键情报。
假设侦察员小李记录下了敌军电台的 n 次信号强度数据。为了分析敌军电台的发射规律,我们需要计算这些信号强度的极差(即:最强信号与最弱信号的差值)。
输入一个正整数 n,随后输入 n 个代表信号强度的正整数。请编程找出其中的最大值和最小值,并输出它们的差。
第一行:一个正整数 n(1≤n≤100)。
第二行:n 个正整数(信号强度),用空格隔开。
一个整数(最大值减去最小值的差)。
输入数据总数不超过 100 个。
信号强度范围为 1≤强度值≤1000。
1 4 7
6
1 3 4 9 2
8
7 7 7 7 7
解放战争时期,军民团结一心。前线指挥部正在评选支援前线的模范队,需要统计各小队运送的粮食总量(单位:斤)。由于敌军的无线电干扰,接收到的电报数据掺杂了乱码噪点,用字符 # 表示。
作为通讯员,请你编写程序,发扬一丝不苟的作风,剔除电文中的噪点 #,并找出运送物资数量最多的小队。
第一行,一个正整数n,表示小队的数量;
接下来n行,每一行给出一个小队的代号与物资数量,中间用一个空格隔开。代号与物资数量均不包含空格,物资数目有可能包含 #,除此之外都由数字组成,且无前导零或小数点。
输出物资运送总量最多的小队的代号,以及相应的物资实际数量。若有多个小队物资数量并列最大,输出顺序靠前的小队代号。
100%数据:1≤n≤100000
名字的长度不超过100
ab 123#0987#123
abc 122489720
ab 1230987123
TeamYanAn 8#8#4#8
TeamJingGang 88#4#8
TeamZunYi 884#7
TeamXiBaiPo 88#48###
TeamYanAn 8848
XuzhouMilitia 9#999999#9999999#9999
LinyiMilitia 1#0000000000000#000000
SuxianMilitia 99#99999999#99999#999
LinyiMilitia 10000000000000000000