Itat第七届C语言程序设计复赛试题(A卷)
教育部教育管理信息中心
第七届全国信息技术应用水平大赛复赛试题
C 语言程序设计(A卷)
请仔细阅读并严格遵守题目中关于文件命名和保存的要求。
考生答题完毕后 ,首先创建 以 “准考证号_用户名 ”命名 的文件夹 (形式如 :
433034683_xxxx), 将考试结果严格按题 目上的命名要求进行命名并直接保存在该文件夹下。
注意:考生不得在该文件夹下创建任何子文件夹,所有考试结果均直接保存在该文件
夹根目录下。请务必按照试卷要求提交指定的文件,不得包含非题 目要求的过程文件和临
时文件,不得包含本试题文件和试题素材。
然后选中整个文件夹,用 Winrar 压缩工具打包后存放在本考场指定的考试结果存放地
址,经监考老师确认上传无误后方可离开考场。
注 意 :在 提 交答 案 时,请 务 必选 中上述 存 放 作 品 的文 件 夹 (如 前面 创 建 的
433034683_xxxx 文件夹,而不是文件夹下的全部文件)进行压缩,在完成答案提交后,请
确保上述压缩包仍保存在本地计算机中。
凡违反上述规定的考生,其成绩一律按零分处理。
题目命名要求:请将编写好的源程序以题号命名,例如第 1题的源程序保存为“1.C”。
重要提示:
1、由于时间有限,请考生首先保证编写的程序在 WinTC 等环境下可以编译通过并执
行,在此基础上完成考题要求的全部功能,以免因编译不通过影响考试成绩。
2、如需 以十六进制方式查看 附件 中的 “.dat”文件 内容,请使用 附件 中提供 的
“MiniHex.exe”软件。
3、选用 Visual C++和 Dev C++的考生,请先阅读附件中提供的“VC使用注意事项”
文档。
1. 编程解决如下问题。
已知多组产品销售记录,要求对每组销售记录进行排序,排序规则如下:
(1)产品代码按 ASCII码从小到大排序;
(2)如果产品代码相同,则按金额从大到小排序。
1
教育部教育管理信息中心
同时找出该组销售记录中金额总和最大的产品代码。
销售记录字段说明:
字段名称 类型 长度
产品代码 字符型 4
产品名称 字符型 10
单价 整型
数量 整型
金额 长整型
输入:
销售记录存放于文件 A_01_in.dat 中。
包含多组数据, 每组数据格式为: 第 1 行代表销售记录数, 第 2 行开始为销售记录,
字段之间以空格分隔。多组数据在文件中顺序存放,组之间以换行分隔。
输出:
输出结果存放于文件 A_01_out.dat 中。其数据格式为:第 1 行代表销售记录数,第
2 行开始为排序后的销售记录,字段之间以逗号分隔,最后一行为该组销售记录中金额
总和最大的产品代码。多组结果数据在文件中顺序存放,组之间以换行分隔。
输入示例:
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
输出示例:
4
M001,machine,500,70,35000
M001,machine,500,20,10000