首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件IN30.DAT中有200组数据,每组有3个数,每个数均是3位数。函数readDat()是读取这200组数据存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第二个数大于第一个数加第三个数之和
在文件IN30.DAT中有200组数据,每组有3个数,每个数均是3位数。函数readDat()是读取这200组数据存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第二个数大于第一个数加第三个数之和
admin
2009-02-24
26
问题
在文件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>
typede f 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
.x1, &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)”来实现。如果该条件成立,则把被判断元素存放到数组bb中去,当符合条件的所有元素被找完后,按照“每组数据中的第二个数加第三个数之和的大小”进行从大到小的排序。解答本题的关键是要弄清被处理对象是结构体变量中的某个域,而不是结构体变量本身。
转载请注明原文地址:https://kaotiyun.com/show/RRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
常用的数据结构模型有层次模型、网状模型、______和面向对象模型。
广义表是线性表的推广,是由零个或多个单元素或______所组成的有限序列。
SQL语言采用【】操作方式。例如,查询所有平均成绩在90分以上的学生姓名,用户必须说明完成该请求的具体处理过程,即如何用循环结构按照某条路径一条一条地把满足条件的学生记录读出来,而SQL语言采用集合操作方式,不仅查询结果可以是元组的集合,而且一次插入
设有关键码序列(Q,G,M,Z,A,N,B,P,X,H,Y,S,T,L,K,E),采用二路归并排序法进行排序,下面哪一个序列是第二趟归并后的结果?()A)G,Q,M,Z,A,N,B,P,H,X,
计算机在相互通信时必须遵循统一的
信息传输的安全应保证信息在网络传输的过程中不被泄露和不被攻击。下列哪些属于攻击方法?()①复制信息②剪裁信息③窃听信息
霍夫曼算法可以用于
P地址是Internet赖以工作的基础,它由网络地址和主机地址两部分组成,其中C类网络的主机地址数最多为
一台主机的IP地址为202.112.144.125,子网掩码为255.255.255.248,那么这台主机的主机号为()。
如果对明文attack使用密钥为5的恺撒密码加密,那么密文是 【】。(密文用大写字母表示)
随机试题
论述网络财务的特点。
胸部外伤早期剖胸探查的指征是
治疗哮证肾阳虚明显者,用方为
患者男性,25岁,两天前因发热37.8°,恶心呕吐,右下腹疼痛,诊为阑尾炎(肠痈),拒绝手术治疗,要求针灸。根据特定穴中的特殊治疗作用应选
朱某原是大鹏公司的采购员,已辞职。某日,朱某接到大鹏公司的进出口业务代理商某粮油进出口公司业务员的电话,称该公司代理进口的3000吨特级糖蜜因买主某食品厂急需资金欲低价转卖,大鹏公司如有意购买,务于晚饭前回复。朱某紧接着就打电话找大鹏公司经理,经理正出差,
世界各国的法院都称作“司法机关”,关于行使司法权的司法机关及其职能,下列哪个说法是错误的?()
16周岁以上不满18周岁的公民,能够以自己的劳动取得收人,并能维持当地群众一般生活水平的,可以认定为以自己的劳动收入为主要生活来源的()。
结合你的求职经历,说一下怎样才能有效地获取有用的求职信息。
选出下列文化常识的有关内容。秀才、举人、贡士、进士依次是封建社会科举考试中——、——、——、——的合格者。
如果“鱼和熊掌不可兼得”是不可改变的事实,那么以下哪项也一定是事实?
最新回复
(
0
)