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

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

1、三级信息管理技术机试-261 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.下列程序的功能是:将一正整数序列 K1,K2,K9 重新排成一个新的序列。新序列中,比 K1 小的数都在 K1 的左面(后续的再向左存放),比 K1 大的数都在 K1 的右面(后续的再向右存放),从 K1 向右扫描。要求编写函数 jsValue()实现此功能,最后调用函数 writeDat()把新序列输出到文件 out72.dat 中。说明:在程序中已给出了 10 个序列,每个序列中有 9 个正整数,并存入数组 a109中,分别求出这 10个新序列。注意:部分源程

2、序已给出。请勿改动主函数 main()和写函数 writeDat()的内容。试题程序:#include stdio.hvoid writeDat();void jsValue(int a109)void main()int a109 = 6,8,9,1,2,5,4,7,3,3,5,8,9,1,2,6,4,7,8,2,1,9,3,5,4,6,7,3,5,1,2,9,8,6,7,4,4,7,8,9,1,2,5,3,6,4,7,3,5,1,2,6,8,9,9,1,3,5,8,6,2,4,7,2,6,1,9,8,3,5,7,4,5,3,7,9,1,8,2,6,4,7,1,3,2,5,8,9,4,6,;

3、int i,j;jsValue(a);for(i=0;i10;i + +)for(j=0;j9;j + +)printf(“% d“,aij);if(j=7)printf(“,“);printf(“/n“);writeDat(a);void writeDat(int a109)FILE * fp;int i,j;fp=fopen(“out72.dat“,“w“);for(i=0;i10;i + +)for(j=0;j9;j + +)fprintf(fp,“% d“,aij);if(j=7) fprintf(fp,“,“);fprintf(fp,“/n“);fclose(fp);(分数:100.

4、00)_三级信息管理技术机试-261 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.下列程序的功能是:将一正整数序列 K1,K2,K9 重新排成一个新的序列。新序列中,比 K1 小的数都在 K1 的左面(后续的再向左存放),比 K1 大的数都在 K1 的右面(后续的再向右存放),从 K1 向右扫描。要求编写函数 jsValue()实现此功能,最后调用函数 writeDat()把新序列输出到文件 out72.dat 中。说明:在程序中已给出了 10 个序列,每个序列中有 9 个正整数,并存入数组 a109中,分别求出这 10个新序列。注意:部

5、分源程序已给出。请勿改动主函数 main()和写函数 writeDat()的内容。试题程序:#include stdio.hvoid writeDat();void jsValue(int a109)void main()int a109 = 6,8,9,1,2,5,4,7,3,3,5,8,9,1,2,6,4,7,8,2,1,9,3,5,4,6,7,3,5,1,2,9,8,6,7,4,4,7,8,9,1,2,5,3,6,4,7,3,5,1,2,6,8,9,9,1,3,5,8,6,2,4,7,2,6,1,9,8,3,5,7,4,5,3,7,9,1,8,2,6,4,7,1,3,2,5,8,9,4,

6、6,;int i,j;jsValue(a);for(i=0;i10;i + +)for(j=0;j9;j + +)printf(“% d“,aij);if(j=7)printf(“,“);printf(“/n“);writeDat(a);void writeDat(int a109)FILE * fp;int i,j;fp=fopen(“out72.dat“,“w“);for(i=0;i10;i + +)for(j=0;j9;j + +)fprintf(fp,“% d“,aij);if(j=7) fprintf(fp,“,“);fprintf(fp,“/n“);fclose(fp);(分数:1

7、00.00)_正确答案:(void jsValue(int a109)int i,j,k; /*定义循环控制变量*/int num,temp; /*定义暂存变量*/for(i=0;i10;i + +) /*逐行取数进行处理*/num=ai0; /*暂存每行的第一个元素*/for(j=0;j9;j + +) /*取每行的所有元素*/if(aijnum) /*若后面的数中有比第 1 个数据小的数*/temp=aij; /*则把这个数取出,赋给 temp*/for(k=j;k0;k - -) /*将这个数据左侧的数依次向右移动*/aik=aik-1;ai0=temp; /*再将这个数放在最左侧*/)解析:解析 本题考查的是如何通过双重循环实现对二维数组的访问。数据存放在一个二维数组中,以行为数据处理的基本单位。将第 1 个数取出依次同后面的数进行比较,若后面的数中有比第 1 个数据小的数,则将这个数取出。将这个数据左侧的数依次向右移动(包括第 1 个数),然后将这个数放在最左侧。扫描完一行后,比第 1 个数小的数就都在第 1 个数的左侧,而比它大的就在它的右侧。

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

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

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