首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件IN30.DAT中有200组数据,每组有3个数,每个数均是3位数。函数readDat()是读取这200组数据存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第二个数大于第一个数加第三个数之和
在文件IN30.DAT中有200组数据,每组有3个数,每个数均是3位数。函数readDat()是读取这200组数据存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第二个数大于第一个数加第三个数之和
admin
2009-02-15
45
问题
在文件IN30.DAT中有200组数据,每组有3个数,每个数均是3位数。函数readDat()是读取这200组数据存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第二个数大于第一个数加第三个数之和,其中满足条件的个数作为函数jsSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对结构数组bb中的数据按照每组数据的第二个数加第三个数之和的大小进行降序排列,排序后的结果仍重新存入结构数组bb中,最后调用函数writeDat()把结果bb输出到文件OUT30.DAT中。
注意:部分源程序已给出。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include〈stdio.h>
#include〈string.h>
#include〈conio.h>
typedef struct
{
int x1, x2, x3;
} Data;
Data aa[200], bb[200];
int jsSort ()
{
main ( )
{
int count;
readDat ( );
count = jsSort(); /*返回满足条件的个数*/
writeDat (count);
}
readDat ( )
{
FILE *in;
int i;
in = fopen("IN30.DAT", "r");
for(i=0; i〈200; i++)
fscanf(in, "%d %d %d", &aa[ii.xl, &aa
.x2, &aa
.x3);
fclose (in);
}
writeDat(int count)
{
FILE *out;
int i;
out= fopen("OUT30.DAT", "w");
clrscr ( );
for(i=0; i〈count; i++)
{
printf("%d, %d, %d 第二个数+第三个数=%d\n", bb
.x1, bb
.x2, bb
.x3,
bb
.x2+bb
. x3);
fprintf(out, "%d, %5d, %d\n", bb
.x1, bb
.x2, bb
.x3);
}
fclose (out);
}
选项
答案
int jsSort () { int i, cnt=0, j; Data ch; for (i=0; i〈200 ;i++) if(aa[i].x2>aa[i].x1+aa[i].x3) /*如果第二个数大于第一个数加第三个数之和*/ { bb [cnt] =aa [i]; /*则把该组数据存入结构数组bb中*/ cnt++; /*统计满足条件的数据的组数*/ } for (i=0; i〈cnt-1; i++) /*对结构数组bb中的数据按照每组数据的第二个数*/ for (j=i+1; j〈cnt; j++) /*加第三个数之和的大小进行降序排列*/ if(bb[i].x2+bb[i].x3〈bb[j].x2+bb[j].x3) { ch=bb [i]; bb[i] =bb[j ]; bb [j] =ch; } return cnt; /*返回满足条件的个数*/ }
解析
本题考查对结构体数组中的元素的各个域的操作。首先利用一个for循环来依次取得结构体数组中的各个元素,之后按照题目要求对当前的元素的各个域进行条件判断,由语句“if (aa
.x2>aa
.x1+aa
.x3)”来实现。如果该条件成立,则把被判断元素存放到数组比中去,当符合条件的所有元素被找完后,按照“每组数据中的第二个数加第三个数之和的大小”进行从大到小的排序。解答本题的关键是要弄清被处理对象是结构体变量中的某个域,而不是结构体变量本身。
转载请注明原文地址:https://kaotiyun.com/show/axfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
下列选项中,哪一项不是子网地址规划需要回答的基本问题之一()。
创建子网的操作步骤是()。①为每个网络设定一个子网掩码②为每个物理段设定一个不同的subnetID③为每个子网确定主机的合法地址空间④确定所需要的hostID数⑤确定所需要的netID数
网络地址规划的执行步骤为()。①判断用户对网络与主机数的需求②计算满足用户需求的基本网络地址结构③计算网络的主机地址④计算网络地址⑤计算地址掩码⑥计算网络广播地址
IP地址分为A,B,C,D和E5类,其中B类地址用几位二进制数表示网络地址()。
DHCP服务器可以是()。
分析网络应用系统的安全性需求,表现在()。
下列选项中,不属于目前流行的网络数据库管理系统的是()。
攻击者冒充信息源节点用户,将伪造的信息发送给信息的目的节点,这属于()。
设计一个宽带城域网将涉及“三个平台一个出口”,即网络平台、业务平台、管理平台和
在设计点对点(AdhoC)模式的小型无线局域时,应选用的无线局域网设备是
随机试题
关于低正常股利加额外股利政策,下列说法正确的有()
Inordertoworkheretheforeignerneedsaworkpermit,whichmustbeapplied【C1】______byhisprospectiveemployer.Theproblem
脑神经中沿食管走向腹腔的是
以下哪项不是血虚月经过少的主证
计算净收益的计算公式为:净收益=潜在毛收入-运营费用=有效毛收入-运营费用。()
财政部门对某国有中型企业2013年的会计工作进行检查,经核实以下情况并根据会计有关规定予以指正,要求限期改正:(1)3月该厂精简机构将财务科撤并到综合办公室,由厂办主任陈某兼综合办公室负责人,陈某一直从事行政管理工作;(2)原财务人员保
甲、乙、丙、丁拟任A上市公司独立董事。根据《上市公司独立董事制度》的规定,下列选项中,当事人不能担任独立董事的情形有()。
某宾馆设有单人间和双人间两种客房。按照规定,每位入住该宾馆的客人都要进行身份登记。宾馆数据库中有客房信息表(房间号……)和客人信息表(身份证号,姓名,来源……);为了反映客人人住客房的情况,客房信息表与客人信息表之间的联系应设计为()。
Noonecandenythatpesticidehaveimprovedtheabilityoffarmerstobringtheircropstomarket.【C1】______pesticides,farmer
Pleasedispose______thoseoldnewspaperswhileyouarecleaninguptheroom.(1994年考试真题)
最新回复
(
0
)