首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
文件IN.DAT中存有200组数据,每组有3个数,每个数均是三位数。函数ReadData()是读取这200组数据存放到结构数组inBuf中。请编制函数dataSort(),其功能是;要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之
文件IN.DAT中存有200组数据,每组有3个数,每个数均是三位数。函数ReadData()是读取这200组数据存放到结构数组inBuf中。请编制函数dataSort(),其功能是;要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之
admin
2012-07-20
62
问题
文件IN.DAT中存有200组数据,每组有3个数,每个数均是三位数。函数ReadData()是读取这200组数据存放到结构数组inBuf中。请编制函数dataSort(),其功能是;要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之和,其中满足条件的个数作为函数dataSort()的返回值,同时把满足条件的数据存人结构数组outBuf中,再对结构数组outBuf中的数据按照每组数据的第一个数加第三个数之和的大小进行升序排列(第一个数加第三个数的和均不相等),排序后的结果仍重新存人结构数组outBuf中,函数WriteData(int)负责把结果outBuf输出到文件OUT.DAT中。
注意;部分源程序已给出。
请勿改动主函数main()、读函数ReadData()和写函数WriteData(int)的内容。
试题程序;
#include
#include
#include
typedef struct
{
int xl,x2,x3;
}
Data;
Data inBuf[200],outBuf[200];
void RcadData();
void WriteData(int);
int dataSort()
{
}
void main()
{
int count;
ReadData();
count=dataSort();/*返回满足条件的个数*/
WriteData(count);
}
void ReadData()
{
FILE*in;
int i;
in=fopen("IN.DAT","r");
for(i=0;i<200;i++)
fscanf(in,”% d,%d,% d,",&inBuf
.
xl,&inBuf
.x2,&inBuf
.x3);
fclose(in);
}
void WriteData(int count)
{
FILE*out;
int i;
out=fopen("OUT.DAT","w");
system("CLS");
for(i=0;i
{
printf("xl=%d,x2=%d,x3=%d xl
+x3=%d\n",outBuf
.xl,outBuf
.x2,outBuf
.x3,outBuf
.xl+
outBuf
.x3);
fprintf(Out,"x1=%d,x2=%d,x3
=%d xl+x3=%d\n",outBuf
.xl,
outBuf
.x2,outBuf
.x3,outBuf
.xl+outBuf
.x3);
}
fclose(out);
}
选项
答案
int dataSort() { int count=0,i,j; Data temp; for(i=0;i<200;i++) { if(inBuf[i].x1>inBuf[i].x2+inBuf[i].x3) /*如果符合条件,则将inBuf中的内容写到outBuf中*/ { outBuf[count].xl=inBuf[i].xl; outBuf[count].x2=inBuf[i].x2; outBuf[count].x3=inBuf[i].x3; count++; } } for(i=0;i
解析
本题主要考查结构数组排序的问题。所谓结构数组排序就是以结构某一元素为依据对结构数组进行排序。排序时仍采用冒泡排序法。但是由于结构不像变量那样可以通过简单的赋值来交换变量(如果要赋值的话需要对结构里的所有元素进行赋值替换,比较麻烦),所以在进行两个相邻结构交换时,用到内存拷贝函数来对内存的内容整体进行操作。由于本题的头文件中没有包含对内存操作的头文件mem.h,故只能用赋值的方法来进行结构的交换。
转载请注明原文地址:https://kaotiyun.com/show/k24Z777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
计算机网络采用层次结构,各层之间互相【 】。
在OSI参考模型的各层中,向用户提供可靠的端到端(End-to-End)服务,透明地传送报文的是______。
10GbpsEthernet只工作在全双工方式,因此其传输【 】不再受冲突检测的限制。
一个计算机网络协议主要由【 】、语义和时序3个基本要素组成。
如果—个Web站点利用IIS建立在NTFS分区,那么可以通过IP地址限制、【 】限制、Web权限和NTFS权限对它进行访问控制。
以下的网络管理功能中,不属于配置管理的是
红外局域网的数据传输有3种基本的技术:定向光束传输、全方位传输与
IP地址采用分段地址方式,长度为4个字节,每个字节对应一个【 】进制数。
中断是指系统资源遭到破坏或变得不能使用,这是对______的攻击。
在广域网中,T1标准规定的速率为______。
随机试题
爱国主义、团结统一、爱好和平、勤劳勇敢、自强不息等是中华民族在五千多年的发展中形成的
男,70岁。有多年排尿不畅,呈滴淋状。近2年双侧腹股沟区出现半圆形肿块,站立时明显,平卧后消失,体检时压迫内环肿块仍出现,诊断为
卖点必须具备()条件。
市盈率指标可用于不同行业公司的比较。( )
下列各项中,不属于企业投资性房地产的是()。
下列有关《孔子改制考》的说法不正确的是()。
巴洛克时期最重要的器乐体裁之—奏鸣曲分________奏鸣曲和独奏奏鸣曲两类。
教学方法是指教师为完成教学任务而采取的方法。()
SendingE-mailstoProfessorsOnestudentskippedclassandthensenttheprofessorane-mail(51)forcopiesofherteaching
A、Becausehewantstosmoke.B、Becauseit’sagiftforhisson.C、Becausehecollectslighters.D、Becauseheforgetstotakeit
最新回复
(
0
)