【计算机类职业资格】三级信息管理技术机试-193及答案解析.doc

上传人:ideacase155 文档编号:1320668 上传时间:2019-10-17 格式:DOC 页数:4 大小:28KB
下载 相关 举报
【计算机类职业资格】三级信息管理技术机试-193及答案解析.doc_第1页
第1页 / 共4页
【计算机类职业资格】三级信息管理技术机试-193及答案解析.doc_第2页
第2页 / 共4页
【计算机类职业资格】三级信息管理技术机试-193及答案解析.doc_第3页
第3页 / 共4页
【计算机类职业资格】三级信息管理技术机试-193及答案解析.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、三级信息管理技术机试-193 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.在文件 IN6.DAT 中有 200 个正整数,且每个数均在 10009999 之间。函数 readDat()的功能是读取这200 个数并存放到“数组 aa 中。请编制函数 jsSort(),该函数的功能是:要求按每个数的后 3 位的大小进行降序排列,将排序后的前 10 个数存人数组 b 中,如果数组 b 中出现后 3 位相等的数,则对这些数按原始 4 位数据进行升序排列。最后调用函数 writeDat()把结果 bb 输出到文件 0UT6.DAT 中。例如:处理

2、前 9012 5099 6012 7025 8088处理后 5099 8088 7025 6012 9012注意:部分源程序已给出。请勿改动主函数 main()、读函数 readDat()和写函数 writeDat()的内容.试题程序#include stdio.h#include string.h#include stdlib.hint aa200,bb10;void readDat();void writeDat();void jsSort()void main()readDat();jsSort();writeDat();void readDat()FILE*in;int i;in=fo

3、pen(“IN6.DAT“,“r“);for(i=0;i200;i+)fscanf(in,“%d,“,fclose(in);void writeDat()FILE *out;int i;out=fopen(“OUT6.DAT“,“w“);system(“CLS“);for(i=0;i10;i+)printf(“i=%d,% d/n“,i+1,bbi);fprintf(out,“%d/n“,bbi);fclose(out);(分数:100.00)_三级信息管理技术机试-193 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.在文件 IN6.DA

4、T 中有 200 个正整数,且每个数均在 10009999 之间。函数 readDat()的功能是读取这200 个数并存放到“数组 aa 中。请编制函数 jsSort(),该函数的功能是:要求按每个数的后 3 位的大小进行降序排列,将排序后的前 10 个数存人数组 b 中,如果数组 b 中出现后 3 位相等的数,则对这些数按原始 4 位数据进行升序排列。最后调用函数 writeDat()把结果 bb 输出到文件 0UT6.DAT 中。例如:处理前 9012 5099 6012 7025 8088处理后 5099 8088 7025 6012 9012注意:部分源程序已给出。请勿改动主函数 ma

5、in()、读函数 readDat()和写函数 writeDat()的内容.试题程序#include stdio.h#include string.h#include stdlib.hint aa200,bb10;void readDat();void writeDat();void jsSort()void main()readDat();jsSort();writeDat();void readDat()FILE*in;int i;in=fopen(“IN6.DAT“,“r“);for(i=0;i200;i+)fscanf(in,“%d,“,fclose(in);void writeDat(

6、)FILE *out;int i;out=fopen(“OUT6.DAT“,“w“);system(“CLS“);for(i=0;i10;i+)printf(“i=%d,% d/n“,i+1,bbi);fprintf(out,“%d/n“,bbi);fclose(out);(分数:100.00)_正确答案:(void jsSort()inti,j; /*定义循环控制变量*/int temp; /*定义数据交换时的暂存变量*/for(i=0;i199;i+) /*用选择法对数组进行排序*/for(j=i+1;j200;j+)if(aai%1000aaj%1000) /*按照每个数的后 3 位大小

7、进行降序排序*/temp=aai;aai=aaj;aaj=temp;else if(aai%1000=aaj%1000) /*如果后 3 位数相等*/if(aaiaaj) /*则按原 4 位数的大小进行升序排序*/temp=aai;aai=aaj;aaj=temp;for(i=0;i10;i+) /*将排序后的前 10 个数存入数组 bb 中*/bbi=aai;)解析:解析 根据题意,函数应该具有两个功能:一是要对这些数按照后 3 位的大小进行排序;二是将排序后的结果存人数组 bb 中。由于本题要求对数组中的 4 位数按照后 3 位进行排序,因此,首先要取得各个数的后 3 位并作比较,计算表达式“aai%1000”就可以得到每个数的后 3 位。根据题意,对这些数的后 3 位按从大到小的顺序进行排序。若后 3 位数相等,则按原 4 位数的值进行从小到大的排序。最后,将排序的结果存人数组 bb 中。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1