首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN69.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsVal(),其功能是:把一个4位数的千位数上的值减百位数上的值再减十位数上的值最后减个位数上的值,如果得出的值大于等于零且此4位数是奇数
已知数据文件IN69.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsVal(),其功能是:把一个4位数的千位数上的值减百位数上的值再减十位数上的值最后减个位数上的值,如果得出的值大于等于零且此4位数是奇数
admin
2010-06-17
34
问题
已知数据文件IN69.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsVal(),其功能是:把一个4位数的千位数上的值减百位数上的值再减十位数上的值最后减个位数上的值,如果得出的值大于等于零且此4位数是奇数,则统计出满足此条件的数的个数cnt并把这些4位数存入数组b中,然后对数组b的4位数按从小到大的顺序进行排序,最后调用函数writeDat()把结果cnt及数组b中的符合条件的4位数输出到out69.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 ("IN69. 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 ( "out69.dat","w")
fprintf (fp, "%din", cnt);
for (i=0; i<cnt; i++)
fprintf (fp, "%d\n" ,b
);
fclose(fp);
}
选项
答案
void jsVal() { int i,thou,hun,ten,data,j; for(i=0;i<MAX;i++) { thou=a[i]/1000; /*求四位数的千位数字*/ hun=a[i]%1000/100; /*求四位数的百位数字*/ ten=a[i]%100/10; /*求四位数的十位数字*/ data=a[i]%10; /*求四位数的个位数字*/ if((thou-hun-ten-data>0) &&a[i]%2==1) /*如果千位数减百位数再减十位数最后减个位数得出的值大于等于零且此4位数是奇数*/ { b[cnt]=a[i]; /*则将该数存入数组b中*/ cnt++; /*统计满足条件的数的个数*/ } } for(i=0;i<cnt-1;i++) /*对数组b的4位数按从小到大的顺序进行排序*/ for(j=i+1;j<cnt;j++) if(b[i]>b[j]) { data=b[i]; b[i]=b[j]; b[j]=data; } }
解析
本题考查的知识点如下:
(1)“%”与“/”的使用。
(2)循环结构与判断结构的使用。
(3)数据的排序。
本题中,首先借助“%”与“/”将4位数各位上的数拆成独立的数字:将1个4位数整除1000则可得到其千位上的数字,除以1000取余再整除100则可得百位上的数字,除以100取余再整除10则可得十位上的数字,除以10取余则得个位上的数字。1个数除以2取余所得的数等于1,则此数是奇数。利用循环结构实现对200个数据的判断。题中要求将符合条件的4位数按从小到大的顺序存入数组b中,我们可以先将符合条件的4位数存入数组b,然后对b中的数进行排序。排序使用“选择排序法”。
转载请注明原文地址:https://jikaoti.com/ti/Qk97FFFM
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
如果R0=0x80000000,R1=4,R2=0x31322375,而指令STRR2,[R0,R1]!执行后,0x80000004中的数据为0x31,0x80000005中的数据为0x32,0x80000006中的数据0x23,0x80000007中的
电动汽车充电桩(示意图3-1所示)如图以S3C2410芯片为核心,并外加其他功能电路来进行设计,其基本功能描述如下:a、充电桩支持2种充电方式,一种是固定金额方式,如:充300元的电能。那么,所充电能的金额等于300元后自动停止充电;另一种是随机充
所有嵌入式系统都是由硬件和软件两部分组成的,硬件部分的主体是【41】和存储器;它们通过【42】接口(设备)与外部世界联系。
下图为8段LED数码管(图(a))及其共阳极(图(b))及共阴极(图(c))LED数码管的内部结构原理图。为显示字符“8”,加到共阳极及共阴极LED数码管的dp、g、f、e、d、c、b、a的编码分别为0x【65】及0x【66】。
苹果公司的嵌入式移动电子产品风靡全球,iOS操作系统也随之为大众所熟悉。根据iOS的发展历史,它的前身是()。
μC/OS—II的事件控制块有4种类型,需要使用4个不同的函数来创建。如下选项中哪一个用于创建事件控制块?
在ARM汇编语言程序设计中常有子程序设计,下面指令中不属于子程序调用或者返回的指令是()。
下图给出了产生嵌入式处理器时钟信号的两种方法,其中左图为使用【55】_______时钟信号发生器产生嵌入式处理器时钟信号的方法,右图为使用【56】_______时钟信号源产生嵌入式处理器时钟信号的方法。
若某嵌入式系统的应用程序基于μC/OS-Ⅱ操作系统平台来开发,那么,应用程序的main()函数中,需要用函数【79】来创建任务。创建任务前用函数【80】来初始化μC/OS-Ⅱ。
下图是嵌入式系统硬件部分的逻辑组成及其与外部世界关系的示意图,其中CPUI,的组成部分A是41【】:组成部分B是【42】。
随机试题
混浊尿加热加酸,混浊消失但无气泡,提示尿中含有
甲国A公司从乙国B公司进口一批设备,双方约定以DPU贸易术语交货。承运人为乙国C公司。设备运抵日的地后,A公司和B公司曾因卸货费用的承担发生过争议。对此,下列哪一说法是正确的?()
建设工程施工安全控制的具体目标包括()。【2011年考试真题】
普通发票按照国家税务总局的规定,分别由省、自治区、直辖市国家税务局、地方税务局指定的单位印制,符合条件的企业也可以申请印制()。
下列关于内部评级法下的合格保证的说法中,正确的是()。
某合资企业欲就一笔抵押贷款向银行申请展期,则其应向银行提交的法定申请文件有()。
某佛寺大雄宝殿供奉:弥勒佛一释迦牟尼佛一燃灯佛,它体现了()。
阅读材料,根据要求完成教学设计。材料:如图所示为高中某教材“液体”一节中“液体的表面张力”的演示实验。实验:1.把一条细棉线的两端系在铁丝环上,不要让棉线过紧,要使它处于略为松弛的状态。然后将铁丝环浸入肥皂液里,再拿出来时环上
《中国青年报》载文指出,数十名经济学家认为我国城市贫困问题明显加重。专家们认为,这样一个庞大的贫困群体可能来自于:国有企业改革和调整导致失业群体,资源枯竭型城市里大量具有正常劳动能力的城市居民,退休较早、仅依靠退休金的老年人,流入城市、成为城市新贫困阶层的
求助者有两种求助动机:执行性求助和工具性求助。前者是自己不作任何尝试或努力,只想知道答案或让他人代自己完成任务;后者是借助其他人的力量以达到自己解决问题或实现目标的目的。根据上述定义,下列属于工具性求助的是()。
最新回复
(
0
)