首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知IN7.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:依次从数组a中取出一个数,如果该4位数连续大于该4位数以后的5个数且该数是奇牧,则统计出满足此条件的数的个数cnt,并把这些
已知IN7.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:依次从数组a中取出一个数,如果该4位数连续大于该4位数以后的5个数且该数是奇牧,则统计出满足此条件的数的个数cnt,并把这些
admin
2009-02-19
18
问题
已知IN7.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:依次从数组a中取出一个数,如果该4位数连续大于该4位数以后的5个数且该数是奇牧,则统计出满足此条件的数的个数cnt,并把这些4位数按从小到大的顺序存入数组b中,最后调用写函牧writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT7.DAT文件中。
注意:部分源程序已给出。
程序中已定义数组:a[200],b[200],已定义变量:cnt。
请勿改动主函数main()、读函数readDat()和写函数wfiteDat()的内容。
试题程序:
#include<stdio.h>
#define MAX 200
int a[MAX],b[MAX],cnt=0;
void writeDat();
void jsVal()
{
}
void readDat()
{
int i;
FILE * fp;
fp=fopen("IN7.DAT","r");
for(i = 0; i < MAX; i++) fscanf(fp,"%d", &a
);
close(fp);
}
main()
{
int i;
readDat();
jsVal();
printf("满足条件的数=%d\n", cnt);
for(i=0; i < cnt; i++ printf("%d ", b
);
printf("\n");
writeDat()
}
void writeDat )
{
FILE * fp;
int i;
fp = fopen("OUT7.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; int k; for (i=0; i<MAX-5; i++) { for(j=i+1;j<=i+5,j++) /*如果当前数比后面的5个数都大,则给标志变量 flag赋值1*/ { if (a[i]>a[j]) flag=1; else {flag=0;break; } /*否则给标志变量flag赋值0并退出循环*/ if (a [i] %2==0) /*如果该数是偶数,也给标志变量flag赋值0*/ flag=0; } if (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]) {k=b[i] ;b[i]=b[j];b[j]=k;}
解析
根据题意可知,要编制函数的功能有两部分:一是找出满足条件的4位数,二是对找出的数进行从小到大排序。首先利用一个for循环来依次从数组中取得4位数,接着用当前得到的4位数与该数后面的5个数依次进行比较,如果该数比后面的5个数都大,则给标志变量flag赋值1,接着对flag进行判断,如果不为1,则该数肯定不符合条件,直接去取下一个数。若flag值为1,再来判断该数是否是奇数,如果该数又是奇数,则把该数加入到数组b中。这样就可以依次取出符合条件的数。然后利用选择法对b数组中的元素进行从小到大的排序。
转载请注明原文地址:https://www.kaotiyun.com/show/0pcZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
Wndows98采用了层次型的模块结构,系统由许多功能不同的模块组成。在下列动态模块中、( )是Windows图形功能的核心。
Windows98支持多种不同类型的文件系统,并可以安装第三方提供的文件系统。Windows98环境下,DVD—ROM采用的文件系统为______。
计算机使用总线结构的主要优点是便于实现“积木化”,缺点是( )。
下面关于PCI和IDE的叙述中,正确的是( )
下面关于网络中通信与数据通信的叙述中,正确的是( )。
在Windows98环境下可以安装“Microsoft 网络用户”和“NetWare 网络用户”客户机软件。在使用“NetWare网络用户”时,需要与( )协议进行绑定。
有下列数据定义语句:DATASEGMENTADDRDWNUMBERNUMBERDB10ARRAY,DB5DUP(0)TABLElDDRTlRT2;(RTl,RT2是标号)
某PC产品广告中,标称其配置为“2.4G/4G/250G/17宽屏/……”,从中可以看出,该PC的CPU主频为______Hz。
μCOS—Ⅱ操作系统的下面4个主要函数中,只有一个是与任务调度相关的,它是()。
下列________关键码序列不符合堆的定义。
随机试题
管柱内外全部被水泥固死,可采取()。
抗原抗体反应中,抗体过剩时的沉淀反应称为
除给予肠梗阻治疗外还应给予何种治疗在纠正电解质紊乱的同时还要治疗
某医师长期病假,痊愈后上班。医院医务处提醒其应按规定需重新办理执业注册手续,因其中止执业活动时间超过
治疗咽喉肿痛,兼有痰热壅盛者,宜选用的药物是()治疗咽喉肿痛,证属热毒壅结者,宜选用的药物是()
不能用作耐酸涂层的涂料是:[2000--056]
当干路设计车速为50km/h时,互通式立交最小净距值为()
沉入桩施工安全控制主要包括()。
五线谱中,音符的符干有的朝上,有的朝下,只有在()的音符符干可以朝上和朝下。
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是:
最新回复
(
0
)