2023年C++复赛A卷(4-6年级)

C++ 60分钟 总分 100.0 4 题
试卷题目预览
第1题 初级 25.0分 编程
智能购物清单


【故事背景】
小华是一位忙碌的上班族,他想通过一个智能购物清单程序来帮助自己管理日常购物。这个程序可以根据他以往的购物习惯推荐商品,并允许他添加或删除清单上的物品。

【题目描述】
编写一个程序,输入一系列商品及其购买频率。程序应能够根据购买频率对商品进行排序,并允许用户添加或删除特定的商品。

【输入格式】
1. 输入一个正整数N ,表示商品的数量。
2. 接下来N行,每行输入一个商品名称和一个整数,代表购买频率。
3. 输入一个特殊的命令行,可以是"ADD"来添加新商品,或"DEL"来删除现有商品,随后输入商品名称。

【输出格式】
1. 首先输出所有商品按购买频率降序排列的清单。
2. 对于"ADD"命令,输出更新后的清单。
3. 对于"DEL"命令,输出删除商品后的清单。

【样例】
5
牛奶 45
鸡蛋 30
面包 20
苹果 15
巧克力 10
ADD 薯片 25 DEL 巧克力
【样例解释】
牛奶 45
鸡蛋 30
薯片 25
面包 20
苹果 15
鸡蛋 30
面包 20
苹果 15
第2题 初级 25.0分 编程
健康饮食计划


【故事背景】
小林是一位健身爱好者,他希望通过一个健康饮食计划程序来跟踪自己的日常饮食。这个程序需要记录每餐的食物种类和卡路里摄入量,并能够提醒他是否达到了每日的营养目标。

【题目描述】
编写一个程序,输入每日三餐的食物和卡路里。程序应能够计算出每日总卡路里,并判断是否达到了设定的卡路里目标。

【输入格式】
1. 输入一个正整数D ,表示天数。
2. 对于每一天,输入三个浮点数,分别代表早餐、午餐和晚餐的卡路里摄入量。
3. 输入一个浮点数T ,表示每日卡路里目标。

【输出格式】
对于每一天,输出一个消息,指示是否达到了卡路里目标( "达标"或"未达标" ),以及每日总卡路里摄入量。

【样例】
<img src="/static/uploads/images/78fa3170be7e.png" style="max-width:35%;border-radius:6px;margin:8px 0;" />
【样例解释】
<img src="/static/uploads/images/1c9a960a9b32.png" style="max-width:35%;border-radius:6px;margin:8px 0;" />
第3题 初级 25.0分 编程
家庭财务管理


【故事背景】
小王是一位家庭主妇,她希望有一个程序来帮助她管理家庭的日常开支。这个程序需要记录每一笔支出的类别和金额,并能够统计每月的总支出。

【题目描述】
编写一个程序,输入每月的支出记录。程序应能够根据支出类别对金额进行累加,并输出每个类别的总支出。

【输入格式】
1. 输入一个正整数M ,表示支出记录的数量。
2. 接下来M行,每行输入一个字符串和一个浮点数,分别代表支出类别和金额。
3. 输入一个特殊的命令行"SUM"来请求每个类别的总支出。

【输出格式】
对于每个支出类别,输出类别名称和总金额。类别名称按字典序排序。

【样例】
8
食品 150
交通 120
娱乐 250
食品 200
房租 800
交通 90
娱乐 300 
SUM
【样例解释】
食品 550
交通 210
娱乐 550
房租 800
第4题 初级 25.0分 编程
旅行预算规划


【故事背景】
小李正在计划一次长途旅行,他需要一个程序来帮助他规划旅行预算。这个程序需要记录旅行中的各项预计费用,并能够根据实时的支出更新预算。

【题目描述】
编写一个程序,输入旅行的各项预算和实时支出。程序应能够计算剩余预算,并在超出预算时提醒用户。

【输入格式】
1. 输入一个正整数N ,表示预算项目的数量。
2. 接下来N行,每行输入一个字符串和一个浮点数,分别代表预算项目和预算金额。
3. 输入一个特殊的命令行"SPENT" ,随后输入一个浮点数,表示实时支出的金额。

【输出格式】
输出当前的剩余预算。如果支出超出预算,输出一条警告消息。

【样例】
<img src="/static/uploads/images/71cdbb677ce8.png" style="max-width:35%;border-radius:6px;margin:8px 0;" />
【样例解释】
<img src="/static/uploads/images/dcd256ef4b36.png" style="max-width:35%;border-radius:6px;margin:8px 0;" />
💬