首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件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-19
72
问题
已知数据文件IN53.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是;依次从数组a中取出一个4位数,如果该4位数连续大于该4位数以前的5个数且该数是偶数,则统计出满足此条件的数个数cnt并把这些4位数按从大到小的顺序存入数组b中,最后调用写函数wilteDat()把结果cnt及数组b中符合条件的4位数输出到文件OUT53.DAT中。
注意:部分源程序已给出。
程序中已定义数组:a[200],b[200],已定义变量:Cnto
请勿改动主函数main()、读函数readDat()和写函数wiltedat()的内容。
试题程序:
#include
#define MAX 200
int a[MAX],b[MAXl,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();
printf ("满足条件的数=%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 { for(j=i-5;j<i;j++) { if(a[i]>a[j]) /*如果该4位数连续大于它以前的5个数*/ flag=1; /*则置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<ont;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://www.kaotiyun.com/show/wZcZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
汇编语言指令中唯一不可缺少的域是( )。
下面是关于Pentium微处理器实地址模式和虚拟8086模式的描述,其中错误的是:
所谓“变号操作”是指将一个有符号整数变成绝对值相同,但符号相反的另一个整数。假设使用补码表示的8位整数x=10010101,则x经过变号操作后结果为 ( )。
下面关于USB接口的叙述中,错误的是
下面是有关超文本的叙述,其中错误的是
从集线器具有的功能及可提供的服务,大体可以分为智能集线器和______两类。
Windows98操作系统中引入线程概念后,可以提高进程内程序执行的并发性。在下列有关Windows98线程的叙述中,错误的是______。 Ⅰ) 线程也称为“轻量级进程”,它表示进程中的一个控制点和一条执行途径 Ⅱ) Win32应用程序通
已知则C指令的机器代码是73XXH(XX是根据条件转移确定的偏移量),CF=0,IP= 1000H,试问执行该指令后,IP=( )。
若被连接的程序模块有相同的数据段定义,则这两个程序的数据段应选用下列( )类型才比较合理?
ARM处理器中存储器保护单元英文简写为【53】,它允许ARM处理器【54】GB的地址空间定义为8对域,分别控制8个指令和8个数据内存区域。
随机试题
法院告知自诉人有权委托诉讼代理人的时限,应当是自受理案件之日起
关于胺碘酮的常见药物不良反应,下列说法正确的是
最可能的诊断为下列哪种情况不是剖宫产指征
下列符合铺床操作要求的是
V企业发行普通股2000万股,每股面值1元,每股发行价格为5元,V企业按发行收入的1%支付发行手续费、咨询费等费用。假定股票发行成功,发行收入已经全部收到,发行费用已经全部支付。则V企业应贷记“资本公积—股本溢价”7900万元。()
人为风险是指由于人类活动导致的风险。人为风险又可细分为________。
A、0B、1C、2D、3A
下列属于民事权利保护方式的是()。
设un>0,且=q存在.证明:当q>1时级数收敛,当q<1时级数发散.
A、Foodintherestaurants.B、Foodbroughtfromhome.C、Foodinthedinninghall.D、Foodcookedbyherself.B细节题。对话中父亲问女儿是否报名填写了用
最新回复
(
0
)