首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件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
52
问题
在文件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全国计算机三级
相关试题推荐
Atmstrong公理系统中有一条推理规则为:若X→Y为F所逻辑蕴涵,且,则XZ→YZ为F所逻辑蕴涵。这条推理规则称作【】。
采用扩展关系数据模型的方法建立的数据库系统称为()。
事务在运行过程中由于某种原因,事务在正常终止之前就被撤销,这种现象称为______。
一个SQL语句原则上可产生或处理一组记录,而主语句一次只能处理一个记录,为此必须协调两种处理方式,这是通过使用_____机制来解决的。
在一棵二叉排序树中,按______遍历得到的结点序列是有序序列。
已知一个待散列存储的线性表18,34,58,26,75,67,48,81,散列函数为H(k)=kmod11,若采用线性探测法解决冲突,则平均查找长度为______。若采用链接法解决冲突,则平均查找长度为______。
下列问题基于以下的叙述:关系模式R(B,C,M,T,A,G),根据语义有如下函数依赖集:F={B→C,(M,T)→B,(M,C)→T,(M,A)→T,(A,B)→C}。
计算机网络最主要的功能是实现______。
下列关于关系数据库对关系的限定的叙述中,哪些是正确的?Ⅰ.每一个属性是不可分解的Ⅱ.每一个关系模式中,属性的数据类型及属性的个数是固定的,且属性名唯一Ⅲ.每一个关系仅仅有一种记录类型,即一种关系模式Ⅳ.关系中元组的顺序是无关紧要的,交换属性的顺序时
一个公司有若干名兼职人员,而每个兼职人员有可能在多家公司打工,则公司与兼职人员之间具有
随机试题
简述防火墙的分类。
下列项目中,应征收增值税的有()。
以概念同化的学习方式获得概念主要发生在()
关于公民的权利能力和行为能力,表述正确的是()。
社会主义市场经济最基本的主体是()。
(Ⅰ)比较∫01|lnt|[ln(l+t)]ndt与∫01tn|lnt|dt(n=1,2,…)的大小,说明理由;(Ⅱ)记un=∫01|lnt|[ln(1+t)]ndt(n=1,2,…),求极限un.
A、 B、 C、 D、 A
Pedestrianzonesreducecitycenterpollution.
Anarrowingofyourinterestsisimpliedinalmostanytransitionfromastudyenvironmenttomanagerialorprofessionalwork.
A、Socialconnectionsaregoodforlonelypeople.B、Lesssociallyconnectedpeopledonotenjoytheirlife.C、Thehealthoflonel
最新回复
(
0
)