Itat第七届C语言程序设计复赛试题(A卷)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 编程解决如下问题。 已知多组产品销售记录,要求对每组销售记录进行排序,排序规则如下: (1)产品代码按 ASCII 码从小到大排序; (2)如果产品代码相同,则按金额从大到小排序。
1
教育部教育管理信息中心
同时找出该组销售记录中金额总和最大的产品代码。
销售记录字段说明:
字段名称
类型
长度
产品代码
字符型
4
产品名称
字符型
10
单价
整型
数量
整型
金额
长整型
输入:
销售记录存放于文件 A_01_in.dat 中。 包含多组数据,每组数据格式为:第 1 行代表销售记录数,第 2 行开始为销售记录, 字段之间以空格分隔。多组数据在文件中顺序存放,组之间以换行分隔。
输出:
输出结果存放于文件 A_01_out.dat 中。其数据格式为:第 1 行代表销售记录数,第 2 行开始为排序后的销售记录,字段之间以逗号分隔,最后一行为该组销售记录中金额 总和最大的产品代码。多组结果数据在文件中顺序存放,组之间以换行分隔。
功能要求:(1)将原始文本转换为压缩文本; (2)将压缩文本还原为原始文本; (3)计算压缩比:即压缩文本字节数/原始文本字节数,要求小数点后保留 两位。
输入: 原始文本存放于文件 A_02_in_raw.dat 中,包含多行文本。 压缩文本存放于文件 A_02_in_zip.dat 中,包含多行文本。
acing
ACCESSION,ACCESEION
receipt,receit,receite,reciet,recipt 输出:
1
1
1
【分
1,2,2,1 数】50 分
4
【分
P106 数】50 分
教育部教育管理信息中心
2. 编程解决如下问题。 问题描述:对文本中出现的连续的重复字符进行替换,用重复次数和重复字符代替原始
的重复数据,可以达到数据压缩的目的。同时为了能够还原数据,需要在不重复数据前也加 上计数,即 1。
示例: 原始文本:AAABBBBCDE 压缩文本:3A4B1C1D1E
教育部教育管理信息中心
第七届全国信息技术应用水平大赛复赛试题
C 语言程序设计(A 卷)
请仔细阅读并严格遵守题目中关于文件命名和保存的要求。 考生答题完毕后,首先创建以“准考证号_用户名”命名的文件夹(形式如: 433034683_xxxx),将考试结果严格按题目上的命名要求进行命名并直接保存在该文件夹下。 注意:考生不得在该文件夹下创建任何子文件夹,所有考试结果均直接保存在该文件 夹根目录下。请务必按照试卷要求提交指定的文件,不得包含非题目要求的过程文件和临 时文件,不得包含本试题文件和试题素材。 然后选中整个文件夹,用 Winrar 压缩工具打包后存放在本考场指定的考试结果存放地 址,经监考老师确认上传无误后方可离开考场。 注意:在提交答案时,请务必选中上述存放作品的文件夹(如前面创建的 433034683_xxxx 文件夹,而不是文件夹下的全部文件)进行压缩,在完成答案提交后,请 确保上述压缩包仍保存在本地计算机中。 凡违反上述规定的考生,其成绩一律按零分处理。
存放在文件 A_03_in.dat 中,包含多行文本。每行文本中都包含多个用逗号分隔的 字符串,其中第 1 个字符串是目标字符串,第 2 个字符串开始是候选字符串。 输出:
存放在文件 A_03_out.dat 中。输出每行文本中候选字符串到目标字符串的编辑距离 值,多个编辑距离值之间以逗号分隔。 示例:
【分 数】50 分
3
教育部教育管理信息中心
3. 附加题:编程解决如下问题。 设 A 和 B 是 2 个字符串,要用最少的字符操作将候选字符串 A 转换为目标字符串 B。
字符操作包括:(1)删除一个字符;(2)插入一个字符;(3)一个字符改为另一个字符;(4) 交换相邻两个字符。
将字符串 A 转换为字符串 B 所用的最少字符操作数称为字符串 A 到 B 的编辑距离。 要求:计算一组候选字符串到目标字符串的编辑距离,并输出其编辑距离值。 输入:
输出: A_02_in_raw.dat 转换后的压缩文本存放于文件 A_02_out_zip.dat 中。 A_02_in_zip.dat 还原后的原始文本存放于文件 A_02_out_raw.dat 中。
在控制台窗口输出两个文件的压缩比,示例如下: A_02_out_zip.dat,compress ratio=0.10 A_02_out_raw.dat,compress ratio=0.01
题目命名要求:请将编写好的源程序以题号命名,例如第 1 题的源程序保存为“1.C”。 重要提示: 1、由于时间有限,请考生首先保证编写的程序在 WinTC 等环境下可以编译通过并执 行,在此基础上完成考题要求的全部功能,以免因编译不通过影响考试成绩。 2、 如需以 十六进制 方式查 看附件中 的“ .dat”文件 内容,请 使用附件 中提供的 “MiniHex.exe”软件。 3、选用 Visual C++和 Dev C++的考生,请先阅读附件中提供的“VC 使用注意事项” 文档。
输出示例:
4
M001,machine,500,70,35000
M001,machine,500,20,10000
2
M105,machine,400,40,16000
P106,Power,600,70,42000
M001
2
M001,machine,500,70,35000
P106,Power,600,70,42000
输入示例:
4
P106 Power 600 70 42000
M001 machine 500 70 35000
M105 machine 400 40 16000
M001 machine 500 20 10000
2
P106 Power 600 70 42000
M001 machine 500 70 35000
相关文档
最新文档