首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件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
51
问题
在文件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://www.kaotiyun.com/show/euvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
对以下条目中属于设计概念结构策略的有()。Ⅰ.自顶向下Ⅱ.自底向上Ⅲ.自里向外Ⅳ.混合策略
关系代数是一种关系操纵语言,它的操作对象和操作结果均为______。
一个SQL语句原则上可产生或处理一组记录,而主语句一次只能处理一个记录,为此必须协调两种处理方式,这是通过使用_____机制来解决的。
一棵有n个结点的树,该树中所有结点的入度之和为______。
数据库管理系统管理并且控制_____资源的使用。
下面所列的条目中:Ⅰ.语法检查Ⅱ.语义检查Ⅲ.用户存取权限检查Ⅳ.数据完整性检查当用户发出查询数据库数据的命令时,数据库管理系统需要进行的检查是______。
关系模式R的码是______。R的规范化程度最高达到______。
若关系R和S的关系代数操作的结果如下,这是执行了()。[*]若关系R和S的关系代数操作的结果如下,这是执行了()。
为了控制用户程序不能执行特权指令是通过设置PSW中的一个状态位来标志,这一位是
一个公司有若干名兼职人员,而每个兼职人员有可能在多家公司打工,则公司与兼职人员之间具有
随机试题
中国古典自然式园林以表现动态的水景为主。()
山豆根为豆科植物越南槐的干燥根及根茎。山豆根的主要活性成分是生物碱,大多属于喹诺里西啶类。山豆根具有抗肿瘤、抗溃疡、抗心律失常、抗炎及保肝等作用。下列属于喹诺里西啶类生物碱的是
红细胞大量破坏时释放的红细胞素在DIC发病中的作用类似于______。
临产后正常的子宫收缩力起自()。
按国家规定,下列出口货物报检时须提交出口质量许可证书()。
期货投资咨询机构的从业人员不得( )。
某地在网上开展评选优秀教师的活动,结果出来之后有记者质疑这样网上评选的方式是否恰当,获奖者的票数远远超出人们的期望,是否存在网上刷票的情况?就在这个新闻发布会上,你是发言人,你会怎么回答记者的问题?请现场模拟一下。
顾名思义,乳管原位癌是乳导管细胞发生的癌变,这种癌细胞分布在乳导管的内壁上,尚不具备扩散的能力,因此属于“非侵害性”癌细胞,本身不会致死。但是科学家们相信,如果不去治疗的话,总会有几个癌细胞逃出来扩散到其他组织中去,演变成为致命的癌症,因此乳管原位癌又叫做
下列叙述中错误的是()。
Whatdoesthemanagreetodo?
最新回复
(
0
)