首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN53.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsVal(),其功能是:依次从数组a中取出一个4位数,如果该4位数连续大于该4位数以前的5个数且该数是偶数,则统计出满足此条件的数个数cn
已知数据文件IN53.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsVal(),其功能是:依次从数组a中取出一个4位数,如果该4位数连续大于该4位数以前的5个数且该数是偶数,则统计出满足此条件的数个数cn
admin
2009-02-15
32
问题
已知数据文件IN53.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsVal(),其功能是:依次从数组a中取出一个4位数,如果该4位数连续大于该4位数以前的5个数且该数是偶数,则统计出满足此条件的数个数cnt并把这些4位数按从大到小的顺序存入数组b中,最后调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到文件OUT53.DAT中。
注意:部分源程序已给出。
程序中已定义数组:a[200],b[200],已定义变量:cnt。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio.h>
#define MAX 200
int a[MAX] ,b[MAX] ,cnt=0;
void jsVal ()
{
}
void readDat ()
{
int i;
FILE *fp;
fp=fopen("in53.dat","r");
for(i=0;i<MAX;i++)
fscanf(fp,"%d",&a
);
fclose(fp);
}
void main()
{
int i;
readDat();
jsVal();
print f ( "满足条件的数=%d\n", cnt);
for(i=0;i<cnt;i++)
printf("%d",b
);
printf("\n");
writeDat ( );
}
writeDat ()
{
FILE *fp;
int i;
fp=fopen("out53.dat","w");
fprintf(fp,"%d\n",cnt);
for(i=0;i<cnt;i++)
fprintf(fp,"%d\n",b
);
fclose(fp);
}
选项
答案
void jsVal () { int i,j, flag; for (i=5; i<MAX; i++ ) { for (j=i-5; j<i;j++) { if(a[i]>a[j]) /*如果该4位数连续大于它以前的5个数*/ flag=l; /*则置flag为1*/ else flag=0; /*否则置flag为0*/ if (a[i]%2!=0) /*如果该四位数为奇数*/ flag=0; /*则置flag为0*/ if (flag==0) break; /*如果flag为0, 则退出循环*/ } if (flag==1) { b[cnt] =a[i]; /*把满足条件的数存入数组b中*/ cnt++; /*统计满足条件的数的个数*/ } } for (i=0; i<cnt-1; i++) /*将数组b中的数按从大到小的顺利排列*/ for (j=i+1; j<cnt; j++) if(b[i]<b[j] ) { flag=b[i]; b[i]=b[j]; b[j]=flag; } }
解析
本题考查的知识点如下:
(1)使用循环对数组的元素进行比较和排序。
(2)强行退出循环结构。
在本题中,数组b中的数据要满足的条件有两个。在这里,不再使用判断结构中条件的布尔运算,而采用一种新的方法——设置标志变量flag。当数据不满足某一条件时,如数据不是偶数,将flag设置为0:当flag等于0时,可直接退出本层循环结构,进入外层的循环中。否则,根据题意要求,将数据存入数组b中。对数组b中的数据排序,使用“选择排序法”。
转载请注明原文地址:https://kaotiyun.com/show/iwfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
A、 B、 C、 D、 BRPR环限制数据帧只在源结点与目的结点之间的光纤段上传输,当信源结点成功地发送一个数据帧之后,该数据帧直接由目的结点从环中收回。对于传统的FDDI环网,当信源结点向目的结点成
A、 B、 C、 D、 B在宽带城域网业务中有多媒体业务、数据业务与普通的语音业务。各种业务对网络服务质量的要求是不同的。网络服务质量表现在延时、抖动、吞吐量和包丢失率等几个方面。在有限的网络资源条件下,应该
A、 B、 C、 D、 C漏洞入侵是指黑客利用网络系统的漏洞,采用针对该漏洞的工具等方式进行入侵、攻击的行为。比较著名的漏洞入侵有unicode漏洞入侵、跨站脚本入侵、sql注入入侵。
A、 B、 C、 D、 B增量备份只备份相对于上一次备份操作以来新创建或者更新过的数据。比完全备份更快、更小,但可靠性差。但在增量备份系统中,一旦发生数据丢失或文件误删除操作时,恢复工作会比较麻烦,需要查询一
A、 B、 C、 D、 B目前可以作为用户接入网的主要有三类:计算机网络、电信通信网和广播电视网。数字化使这三种网络之间的界限越来越模糊,这造成了通信、计算机和广播电视等产业的会聚,出现了经营业务相互融合,进
A、 B、 C、 D、 D在Windows2003中只要添加操作系统集成的组件IIS(InternetInformationServer)就可实现Web服务;一个网站对应服务器上的一个目录。建立Web站
A、 B、 C、 D、 C路由器的配置方法有:使用Console端口配置;使用telnet远程登录配置;从TFTP服务器上下载配置文件和修改配置文件的方式配置;在AUX端口接一台MODEM同电话网相连,在远端
A、 B、 C、 D、 C网络运行环境是指保障网络安全、可靠与正常地运行所必需的基本设施与设备条件,选项A正确;它主要包括机房与电源两部分选项B正确;机房是放置核心路由器、交换机、服务器等核心设备的场所,同时
A、 B、 C、 D、 D性能管理包括系统监视器、性能日志和警报。系统监视器提供有关操作系统特定组件和用于搜集性能数据的服务器程序所使用资源的详细信息,并图形化显示性能监视数据。性能日志和警报提供数据记录能力
关于单元、子程序和子系统的关系,正确的说法是
随机试题
20世纪初期,为挽救封建专制统治,清政府实行了________、________。
A、直接盖髓B、间接盖髓C、活髓切断术D、根尖诱导成形术E、根管治疗10岁患儿右下第二前磨牙萌出2/3,自发痛。无法咬东西1周。患牙无龋,牙合面有凹陷,Ⅱ度松动,叩痛(++)。主诉牙可选择治疗方法是
A.IgGB.IgAC.IgMD.IgDE.IgE分子量最大
重用黄连清心火以平肝木,指的是
上级规定连续两年超过三起客户投诉就要被开除,部门里的人压力都很大,你该如何做?
电影院贴出通知:原先预告的韩国新剧这个星期六不一定上演。以下哪项最接近于上述通知表明的涵义()
A、 B、 C、 D、 D每一行或一列中,第三个图形显示的是前两个图形中相同的部分。
(2000年试题,四)设Oxy平面上有正方形D=|(x,y)|0≤x≤1,0≤y≤1}及直线l:x+y=t(t≥0).若S(t)表示正方形D位于直线l左下方部分的面积,试求
在SQL语句中空值用【】表示。
Whydoestheideaofprogressloomsolargeinthemodernworld?Surelybecauseprogressofaparticularkindisactually【C1】_
最新回复
(
0
)