首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件INl5.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中。请编制函数jsVal(),其功能是:依次从数组a中取出一个4位数,如果该4位数连续小于该4位数以后的5个数且该数是偶数,则统计出满足此条件的数的个数cn
已知数据文件INl5.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中。请编制函数jsVal(),其功能是:依次从数组a中取出一个4位数,如果该4位数连续小于该4位数以后的5个数且该数是偶数,则统计出满足此条件的数的个数cn
admin
2009-02-15
36
问题
已知数据文件INl5.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中。请编制函数jsVal(),其功能是:依次从数组a中取出一个4位数,如果该4位数连续小于该4位数以后的5个数且该数是偶数,则统计出满足此条件的数的个数cnt,并把这些4位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT15.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(’IN15.DAT", "r");
for(i = 0; i < MAX; i++)
fscanf(fp, "%d", &a
);
fclose (fp);
}
main ( )
{
int i;
readDat ( );
j sVal ( );
printf("满足条件的数=%d\n", cnt);
for(i = 0; i < cnt; i++)
printf("%d ", b
);
printf ( "\n" );
writeDat ( );
}
writeDat ( )
{
FILE *fp;
int i;
fp = fopen("OUT15.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=0; for (i=0;i<MAX-5; i++) /*如果该4位数连续小于该4位数以后的5个数*/ { for (j =i+1; 3<=i+5; j++) { if(a[i]<a[j] ) flag=1; /*则置flag为1*/ else flag=0; /*否则置flag为0*/ if (a [i] %2 ! =0) /*如果该数是奇数则置flag为0*/ flag=0; if (flag==0) /*如果flag为0,则退出循环*/ break; } if (flag==1) /*如果flag为1, 则将该数存入数组b中, 并统计满足条件的数的个数*/ } b[cnt] =a[i]; 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; } }
解析
根据题意可知,要编制函数的功能有两部分:一是找出满足条件的4位数;二是对找出的数进行从小到大排序。首先利用一个幻r循环来依次从数组中取得4位数,接着用当前得到的4位数与该数后面的5个数(可以用循环次数来控制)依次进行比较,如果该数比它后面的5个数都小,则给标志变量flag赋值1。接着对flag进行判断,如果不为1,则该数肯定不符合条件,直接去取下一个数;若nag值为1,再来判断该数是否是偶数,如果恰好该数又是偶数,则把该数加入到数组b中。这样就可以依次取出符合条件的数,然后利用选择法对b数组中的元素进行从小到大的排序。
转载请注明原文地址:https://kaotiyun.com/show/LMfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
下列关于常见网络版防病毒系统的描述中,错误的是______。
以下关于接入技术特征的描述中,错误的是______。
A、 B、 C、 D、 C在HiperLAN/2的典型网络拓扑结构中,一个AP所覆盖的区域称为一个小区,一个小区的覆盖范围在室内一般为30m,在室外一般为150m。
A、 B、 C、 D、 D信息的安全传输包括两个基本部分:①对发送的信息进行安全转换(如信息加密),实现信息的保密性。或者附加一些特征信息,以便进行发送方身份验证;②发送和接收双方共享的某些信息(如加密密钥
在键入交换机命令时可使用缩写形式,在Switch#模式下,如果键入con,则表示______。
A、 B、 C、 D、 ABGP边界路由器初始化的时候,其与相邻的边界路由器交换整个BGP路由表,但以后只需要在发生变化时更新变化的部分,而不是像RIP或OSPF那样周期性地进行更新,这样做对节省网络带宽和
下列关于综合布线系统的描述中,错误的是______。
攻击者利用攻破的多个系统发送大量请求去集中攻击其他目标,受害设备因为无法处理而拒绝服务。这种攻击称为______。
A、 B、 C、 D、 B入侵检测系统的基本功能为:监控、分析用户和系统的行为;检查系统的配置和漏洞;评估重要的系统和数据文件的完整性;对异常行为的统计分析,识别攻击类型,并向网络管理人员报警;对操作系统进行
下列选项中,关于利用新一代网络技术组建大型企业网的基本结构设计原则的描述不正确的是()。
随机试题
建设现代化经济体系的战略支撑,引领发展的第一动力是()
阅读下列材料并回答问题。材料1980年,在我国GDP的构成中,国有经济占78%,集体所有制经济占20%,非公有制经济,就是所谓的个体经济、私人经济和其他类型的经济,只占2%。到2001年,国有经济在GDP中的比重已经下降到40%左右,集
治疗蛔虫病的药有
圆管紊流粗糙区(阻力平方区)的沿程摩阻系数λ与:
“奢靡之始,危亡之渐”出自《新唐书》,为褚遂良向唐太宗的谏言,这句话体现的哲学道理是()。①现象是本质的外部表现②主要矛盾和次要矛盾相互转化③量变是质变的必要准备④质变是量变的必然结果
业主与物业管理企业之间的法律关系内容是()。
《旅行社条例实施细则》自2009年5月1日起施行。()
2001到2012年间,中国对匈牙利进口同比增速小于0的年份有几个?
Themostconsistentlyidentifiedteachereffectivenessvariableistimeontask.Thatis,themoretimethatstudentsspendon
Therecentagreementhas_________________________(为中东的和平铺平了道路).
最新回复
(
0
)