首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件IN.dat中有200组数据,每组有3个数,每个数均是三位数。函数Rdata()读取这 200组数据存放到结构数组aa中,请编写函数greatSort(),其功能是:要求在200组数据中找出条件为每组中的第1个数大于第2个数加第3个数的和,其中满足条
在文件IN.dat中有200组数据,每组有3个数,每个数均是三位数。函数Rdata()读取这 200组数据存放到结构数组aa中,请编写函数greatSort(),其功能是:要求在200组数据中找出条件为每组中的第1个数大于第2个数加第3个数的和,其中满足条
admin
2010-09-05
41
问题
在文件IN.dat中有200组数据,每组有3个数,每个数均是三位数。函数Rdata()读取这 200组数据存放到结构数组aa中,请编写函数greatSort(),其功能是:要求在200组数据中找出条件为每组中的第1个数大于第2个数加第3个数的和,其中满足条件的组数作为函数 greatSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第1个数加第3个数之和的大小进行升序排列(第1个数加第3个数的和均不相等),排序后的结果仍重新存入结构数组bb中。最后调用函数Wdata(),把结果bb输出到OUT.dat文件中。
注意:部分源程序已经给出。请勿改动主函数main()、读数据函数Rdata()和输出数据函数Wdata()的内容。
#include <stdio. h>
#include <string.h>
#include <conio. h>
typedef struct
{ int x1, x2, x3;
} data;
data aa[200], bb[200];
int greatSort ()
{
}
void Rdata ()
{ FILE *in;
int i;
in = fopen("IN.dat", "r");
for (i=0; i<200; i++)
fscanf (in, "%d %d %d", &aa
. x1, &aa
.x2, &aa
.x3);
fclose (in);
}
void Wdata(int count)
{ FILE *out;
int i;
out = fopen("OUT.dat", "w");
for (i=0; i<count; i++)
{ printf("%d,%d,%d 第一个数+第三个数=%d\n", bb
.x1,
bb
.x2, bb
.x3, bb
.x1 + bb
. x3);
fprintf (out, "%d %d %d\n", bb
.x1, bb
.x2,
bb
.x3);
}
fclose (out);
}
void main ()
{ int count;
Rdata ( );
count = greatSort() ;/* 返回满足条件的个数 */
Wdata (count);
}
选项
答案
int greatSort() { int i, j, count = 0; data val; for (i=0; i<200; i++) if (aa[i] .x1 > aa[i] .x2+aa[i] .x3) { bb[count] = aa[i]; count++; } for (i=0; i<count-1; i++) for (j=i+1; j<count; j++) if (bb[i] .x1+bb[i] .x3> bb[j] .x1+bb[j] .x3) { va1 = bb[i]; bb[i] = bb[j]; bb[j] = va1; } return count; } [解题思路] 在for循环语句中,自变量i从0递增到200,判断每组中的第1个数大于第2个数加第3个数之和即表达式aa[i]. x1>aa[i]. x2+aa[i]. x3是否成立,如果表达式成立,即把aa [i] 赋给数组变量bb,同时计数变量count自加。最后用两重循环对数组bb中的数据按照每组数据的第2个数加第3个数之和的大小进行升序排列。
解析
转载请注明原文地址:https://kaotiyun.com/show/euvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
在SQL语言中,一个基本表的定义一旦被删除,则与此表相关的下列内容中哪些也自动被删除?Ⅰ.在此表中的数据Ⅱ.在此表上建立的索引Ⅲ.在此表上建立的视图
设有关键码序列(Q,G,M,Z,A,N,B,P,X,H,Y,S,T,L,K,E),采用堆排序法进行排序,经过初始建堆后关键码值A在序列中的序号是
计算机之所以能按照人的意图自动地进行操作,主要是因为采用了______。
为方便用户开发数据库应用程序,Oracle提供了众多工具供用尸选择使用,如果要进行数据库建模,应使用的工具是()。
关系模型的基本结构是______;关系模型中数据之间的联系是通过______实现的。
数据库管理系统提供用户对数据的操纵功能,实现对数据库数据的检索、插入、修改和删除,这属于数据库管理系统的基本功能中的______。
数据库管理技术的发展是与计算机技术及其应用的发展有着紧密的联系,经历了三个阶段,它们分别是:______阶段、______阶段和______阶段。
在操作系统中,系统是通过______来感知进程的存在,通过对它的访问来获得描述进程情况及控制进程运行的全部信息。
若一棵二叉树中只有叶节点和左、右子树皆非空的节点,设叶节点的个数为1,则左、右子树皆非空的节点个数为【】。
下面不属于对属性列和视图的操作权限的操作有
随机试题
(2012年)在中央银行的一般性货币政策工具中,与存款准备金政策相比,公开市场业务的优点之一是()。
审美意识
A.扁桃体周围脓肿B.咽后脓肿急性型C.咽后脓肿慢性型D.咽旁脓肿E.脓性下颌下炎禁忌口内入路切开排脓的是
引起支气管扩张的主要原因是
不适合用干烤法灭菌的是
某单位法人代表指使会计人员王某虚构三笔经济业务。套取现金并以王某名义存入银行,属于违反( )会计法律制度的规定。
一般来讲,地陪与领队、全陪商定日程的时间宜在()。
结合材料,回答问题:材料12012年6月,神舟九号的圆满成功,标志着中国航天事业又向前推进了一步。按照中国航天事业发展规划,中国载人航天计划分三步来实施,其中,第一步是发射无人和载人飞船,将航天员安全地送入近地轨道,进行对地观测和科学实验,并使航天员安
HowdidthewomanknowabouttheStudentActionUnion?
Itistruethatthenumberoftrafficaccidentsinvolvingcyclistshasincreased______overthelast10years.
最新回复
(
0
)