首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件in33.dat中有200个正整数,且每个正整数均在1000至9999之间。函数readDat()的功能是读取这200个数并存放到数组aa中。请编制函数jsSort(),该函数的功能是:要求按照每个数的后3位的大小进行升序排列,将排序后的前10个数存
在文件in33.dat中有200个正整数,且每个正整数均在1000至9999之间。函数readDat()的功能是读取这200个数并存放到数组aa中。请编制函数jsSort(),该函数的功能是:要求按照每个数的后3位的大小进行升序排列,将排序后的前10个数存
admin
2009-02-15
114
问题
在文件in33.dat中有200个正整数,且每个正整数均在1000至9999之间。函数readDat()的功能是读取这200个数并存放到数组aa中。请编制函数jsSort(),该函数的功能是:要求按照每个数的后3位的大小进行升序排列,将排序后的前10个数存入数组
bb中,如果数组bb中出现后3位相等的数,则对这些数按原始4位数据进行降序排列。最后调用函数writeDat()把结果bb输出到文件out33.dat中。
例如:处理前 6012 5099 9012 7025 8088
处理后 9012 6012 7025 8088 5099
注意:部分源程序已给出。
请勿改动主函main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio.h>
#include<string.h>
#include<conio.h>
int aa[200],bb[10];
void readDat();
void writeDat();
void jsSort()
{
}
Void main()
{
readDat ();
jsSort();
writeDat();
}
void readDat()
{
FILE *in;
int i;
in=fopen("in33.dat","r");
for(i=0;i<200;i++) fscanf(in,"%d ",&aa
);
fclose(in);
}
void writeDat()
{
FILE *out;
int i;
clrscr();
out=fopen("out33.dat","w");
for(i=0;i<10;i++)
{
printf("i=%d, %d\n", i+1, bb
);
fprintf(out, "%d\n",bb
);
}
fclose(out);
}
选项
答案
void jsSort() { int i, j,data; for(i=0;i<199;i++) for(j=i+1;j<200;j++) { if(aa[i]%1000>aa[j]%1000) /*按照每个数的后3位的大小进行升序排列*/ { data=aa[i]; aa[i]=aa[j]; aa[j]=data; } else if(aa[i]%1000==aa[j]%1000 /*如果后3位数值相等,则对这些数值按原始4位数据 进行降序排列* / if(aa[i]<aa[j]) { data=aa[i]; aa[i]=aa[j]; aa[j]=data; } } for(i=0;i<10;i++) /*将排好序的前十个数存入数组bb中*/ bb[i]=aa[i]; }
解析
本题考查的知识点如下:
(1) 循环结构的嵌套。
(2) 选择结构的嵌套。
(3) 特殊运算符“%”的使用。
(4)数据的升降序排列。
在该题中,首先要解决的问题是如何把题中4位数转换成符合要求的3位数。这里要用到一个比较特殊的运算符%,它的功能是取余。将4位数除以1000取余则得到要求的3位数。根据题意,若后3位相等,则按照原数据进行降序排序,所以在这里要加一个选择结构进行判断。对数据进行排序,可以使用最简单的“选择排序法”。即第一次从第一个数据开始和所有后面的数据进行比较,与比它大(小)的数据交换位置,将数据中最大(小)的数交换到最前面。第二次从第二个数据开始与后面的数据进行比较,将此次比较中最(小)的数据交换至第二个位置,直至最后一个数据。
转载请注明原文地址:https://kaotiyun.com/show/RUfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
()由通信控制处理机、通信线路与其他通信设备组成。
()一般是由计算机操作系统、数据库管理系统、应用软件与网络操作系统和防火墙来共同保障,通常采用的方法是用户访问权限的设置、用户口令加密、用户身份认证、数据加密与结点地址过滤等。
()缓存主要用于存储控制器、存储器、缓存检索表数据。
作为主干设备的交换机需要注意选择:是否每个端口都有独立的缓冲区、模块或端口是否设计有独立的(),以及缓冲区的队列调度算法。
目前,流行的网络数据库管理系统主要有:()、Sybase、()、DB2等。
网络运行环境主要包括()与()两个部分。
被动接口就是在指定的接口上抑制路由更新,阻止路由更新报文通过该路由器接口。在RIP路由配置模式下,使用()命令,指定一个路由器接口为被动接口。
计算机病毒按破坏性分为良性病毒和()两种。
下列选项中,关于静态路由表的叙述不正确的是()。
控制器的功能为()。
随机试题
对有呼吸功能障碍者,术前准备中不应包括
女性,30岁。半年来间断性腹泻,每日5~6次,量中等,黏液血便,腥臭味。查体:生命体征平稳,心肺未见异常,肝脾未触及,腹软,右下腹压痛。为确定诊断,需做
关于人民法院调解民事纠纷,下列哪些做法是合法的?()
根据《质量管理体系要求》,下列关于不合格输出的说法,正确的有()。
在对外开放不断扩大的情况下,要把处理好国内需求与国外需求的关系,实现国际收支平衡、保持( )基本稳定作为总量平衡的重要目标。
承包企业项目成本的考核,包括企业对项目成本的考核和企业对项目经理部可控责任成本的考核。其中企业对项目成本的考核包括( )。
材料一:文化是民族的血脉,是人民的精神家园。中国特色社会主义先进文化,是以马列主义为指导,以社会主义核心价值体系为灵魂,面向现代化、面向世界、面向未来的文化,是民族的、科学的、大众的文化。中国共产党始终代表着中国先进文化的前进方向。我们党从诞生之日起,就强
模因指在语言、观念、信仰、行为方式等的传递过程中,与基因在生物进化过程中所起作用类似的那个东西,即通过非遗传方式一代一代传承下来的文化单元。根据上述定义,下列不属于模因的是:
根据《物权法》的有关规定,下列权利可以设定抵押权的是()。
Thissummerthecity’sDepartmentofTransportationstartsanewbike-shareprogram.People【K1】______liveandworkinNewYork
最新回复
(
0
)