首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
文件IN.DAT中存有200组数据,每组有3个数,每个数均是三位数。函数ReadData()是读取这200组数据存放到结构数组inBuf中。请编制函数dataSort(),其功能是;要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之
文件IN.DAT中存有200组数据,每组有3个数,每个数均是三位数。函数ReadData()是读取这200组数据存放到结构数组inBuf中。请编制函数dataSort(),其功能是;要求在200组数据中找出条件为每组数据中的第一个数大于第二个数加第三个数之
admin
2012-07-20
29
问题
文件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全国计算机三级
相关试题推荐
在理解误码率时,应该注意以下问题,其中叙述中正确的是______。Ⅰ.应衡量数据传输系统正常工作状态下传输可靠性的参数Ⅱ.对于实际的数据传输系统,可以笼统地说误码率越低越好Ⅲ.对于实际数据传输系统,如果传输的不是二进制码元,要
在点—点式网络中,每条物理线路连接—对计算机,假如两台计算机之间没有直接连接的线路,那么它们之间的分组传输就要通过中间结点的______。
目前常用和流行的浏览器软件有两种:一种是Microsoft公司推出的InternetExplorer(IE)另一种是Netscape公司推出的
局域网的网络硬件主要包括服务器、工作站、网卡和
浏览器通常由一系列的客户单元、一系列的【 】单元和一个控制单元组成。
在下面常用的端口号中,默认的用于FTP服务的TCP端口的是______。
电子商务的应用范围主要为
在令牌总线和令牌环局域网中,令牌是用来控制结点对总线的
下列FTP客户端应用程序中,用户只能从FTP服务器下载文件而不能上传文件的是______。
千兆以太网的传输速率比快速以太网快10倍,数据传输速率达到【 】。
随机试题
8086的ALE引脚的作用是锁存复用线上的地址。()
食管分颈、胸、腹3段的分界标志分别是
一般情况下我国人体的能量来源主要是
在举行行政案件听证程序时,遇有下列哪些情形,可以中止听证?()
试述课题论证的基本内容。
农业社会主义改造中建立的初级农业生产合作社属于()
计算,其中D={(x,y)|x2+y2≤1,x2+y2≤2x}.
July7th,2014DearProf.Lee,TheAcademicConferenceontraditionalChinesetreatmentacupunctureandmoxibustion,whic
DoSomethingYou’veprobablyheardthecommonrefrain,"Childrenaretheleadersoftomorrow."Oneorganizationrefutestha
“光盘行动”(“ClearYourPlate”Campaign)提醒人们,在他们大肆浪费粮食的时候,全世界仍然有许多人饱受饥饿之苦。
最新回复
(
0
)