首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在文件in75.dat中有200组数据,每组有3个数,每个数均为3位数。函数readDa(()是读取这200组数存放到结构数组aa中。请编制函数JsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之和,
在文件in75.dat中有200组数据,每组有3个数,每个数均为3位数。函数readDa(()是读取这200组数存放到结构数组aa中。请编制函数JsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之和,
admin
2010-01-09
56
问题
在文件in75.dat中有200组数据,每组有3个数,每个数均为3位数。函数readDa(()是读取这200组数存放到结构数组aa中。请编制函数JsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之和,其中满足条件的个数作为函数JsSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数按照每组数据的第一个数加第三个数之和的大小进行升序排列(第一个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中。最后调用函数writeDat()把结果 bb输出到文件out75.dat。
注意:部分源程序已给出。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio.h>
#include<string.h>
#include<conio.h>
typedef struct
{
int xl,x2,x3;
} Data;
Data aa[200],bb[200];
int jsSort()
{
}
void main()
{
int count;
readDat();
count=jsSort();
writeDat(count);
}
readDat ( )
{
FILE *in;
int i;
in=fopen("in75.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;
clrscr();
out=fopen("out75,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);
}
选项
答案
int jsSort() { int i, j, count=0; Data val; for (i=0; i<200;i++) if(aa[i] .xl>aa[i] .x2+aa [i] .x3) /*如果每组数据中的第一个数大于第二、 三个数之和*/ { bb [count] .xl=aa [i] .x1; /*把满足条件的数据存入结构数组bb中*/ bb[count] .x2=aa[i] .x2; bb[count] .x3=aa[i] .x3; count++; /*统计满足条件的数据的组数*/ } for (i=0; i<count-1; i++ ) /*对bb中的数按照每组数据的每一个数加第三个 数之和的大小进行升序排列*/ for (j=i+l; j<count; j++) if(bb[i) .x1+bb[i].x3>bb[j] .x1+bb[j] .x3) { val=bb[i); bb[i]=bb[j]; bb[j]=val; } return count; /*满足条件的数据的组数*/ }
解析
本题考查的知识点如下:
(1)结构体及结构数组。
(2)数据的排序。
(3)函数的返回值。
本题中,定义了结构类型和结构数组,这就要涉及到结构体和结构数组的访问。相同类型的结构体变量之间可以直接赋值,也可以依次对结构体中的每个变量进行赋值或访问。排序使用“选择排序法”。函数的值通过return语句返回,格式为:return表达式或return(表达式)或return,当函数没有返回值时用第3种格式。在本题中,要用第1种或第2种格式。
转载请注明原文地址:https://www.kaotiyun.com/show/2KYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
设在SQLServer2008中,要创建有一个输入参数和一个输出参数的存储过程。请补全下列语句:CREATEPROCP1@xint,@yint【7】AS……
设在采用SQLServer2008数据库的图书馆应用系统中有三个基本表,表结构如下所示,请用SQL语句完成下列两个查询:检索至少借了5本书的同学的借书证号、姓名、系名和借书数量。
触发器有3种类型,即INSERT类型、UPDATE类型和【4】。
数据库应用系统投入运行后,应用系统进入运行管理与维护阶段。设某学生管理系统在运行管理与维护阶段有如下工作:Ⅰ.定期检查数据文件的存储空间占用情况,并根据需要分配存储空间Ⅱ.分斫数据库中各种操作,以发现潜在性能问题Ⅲ.将数据库中历史数据转储到离线存储介
在SQLServer2008中,设log1是SQLServer身份验证模式的数据库服务器登录帐户。现要授予log1具有创建数据库的权限,请补全下列语句:EXECsp_addsrvrolemember’log1’,’_______’
在数据库应用系统开发的需求调研阶段,需要对用户提出的需求进行分析和整理。此过程不仅需要描述用户提出的具体功能需求,也需要对用户未明确提出的非功能需求进行描述。设在某商场经营管理系统的需求分析阶段整理了下列需求:Ⅰ.系统需要支持会员制Ⅱ.系统不需要考虑财
某数据库应用系统在运行中,用户反映某操作很慢。系统工程师在用户的客户机及数据库服务器上使用数据库管理系统自带的客户端程序执行此操作所涉及的SQL语句,发现在两个环境下SQL语句执行的速度都很慢。为了提高效率,下列检查无需进行的是()。
下面说法正确的是()。
现有一个大型咨询公司的数据库应用系统,每个部门都要生成大量的全局报表并执行少量的更新操作。随着数据量的增加,系统出现了性能瓶颈。鉴于各个部门地理上是分散的,公司希望采用分布式数据库技术解决该问题。下列数据分配方式中最适合该应用的是()。
为了保证CPU执行程序指令时能正确访问存储单元,需要将用户程序中的逻辑地址转换为运行时可由机器直接寻址的物理地址,这一过程称为
随机试题
哪种治法是根据五行相克规律制定的
有一慢性腹泻患者,常排出果酱样有腐腥臭味的脓血便或黏液便,首先考虑什么病
强化胰岛素治疗方案的说法正确的是
女,23岁。2周来右上后牙遇冷热过敏。检查发现6D0深龋,探之未穿髓,病变组织颜色较浅,易剔除。做诊断时应与之鉴别的主要疾病是
变配电所网络结构应()。
审计证据质量的衡量主要是指审计证据的()。
下列记账错误中,不能通过试算平衡检查发现的是()。
这是中国近代史上一次彻底的反帝反封建运动,它标志着中国新民主主义革命的开端。”这次运动是()。
在我国汉字发展史上,介于小篆和楷书中间的字体是()。
材料1中国人民抗日战争的伟大胜利,将永远铭刻在中华民族史册上!永远铭刻在人类正义事业史册上!九一八事变后,中国人民就在白山黑水间奋起抵抗,成为中国人民抗日战争的起点,同时揭开了世界反法西斯战争的序幕。七七事变后,抗击侵略、救亡图存成为中国各党派、
最新回复
(
0
)