首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN68.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:如果4位数各位上的数字均是奇数,则统计出满足此条件的个数cnt,并把这些4位数按从大到小的顺序存入数组b中。最后调
已知数据文件IN68.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:如果4位数各位上的数字均是奇数,则统计出满足此条件的个数cnt,并把这些4位数按从大到小的顺序存入数组b中。最后调
admin
2010-06-17
49
问题
已知数据文件IN68.DAT中存有200个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsVal(),其功能是:如果4位数各位上的数字均是奇数,则统计出满足此条件的个数cnt,并把这些4位数按从大到小的顺序存入数组b中。最后调用函数writeDat()把结果cnt及数组b中符合条件的4位数输出到OUT68.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 ("IN68. 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 ("out68.dat", "w");
fprintf (fp, "%d\n", cnt);
for (i=0; i<cnt; i++)
fprintf (fp, "%din", b
);
fclose (fp);
}
选项
答案
void jsVal() { int i,thou,hun,ten,data,j; for(i=0;i<200;i++) { thou=a[i]/1000; /*求四位数的千位数字*/ hun=a[i]%1000/100; /*求四位数的百位数字*/ ten=a[i]%100/10; /*求四位数的十位数字*/ data=a[i]%10; /*求四位数的个位数字*/ if(thou%2!=0 && hun%2!=0 && ten%2!=0 && data%2!=0) /*如果4位数各位上的数字均是奇数*/ { 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]) { data=b[i]; b[i][b[j]; b[j]=data; } }
解析
本题考查的知识点如下:
(1)“%”与“/”的使用。
(2)循环结构与判断结构的使用。
(3)数据的排序。
本题中,首先借助“%”与“/”将4位数各位上的数拆成独立的数字:将1个4位数整除1000则可得到其千位上的数字,除以1000取余再整除100则可得百位上的数字,除以100取余再整除10则可得十位上的数字,除以10取余则得个位上的数字。1个数除以2取余所得的数不等于0,则此数是奇数。题中要求将符合条件的4位数按从大到小的顺序存入数组b中,我们可以先将符合条件的4位数存入数组b,然后对b中的数进行排序。排序使用“选择排序法”。
转载请注明原文地址:https://kaotiyun.com/show/zBvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
关于ARM处理器的命名,以下说法错误的是()。
下面的描述语句中不正确的是()。
下面有关微内核操作系统的叙述中,错误的是()。
按照嵌入式系统的技术复杂程度进行分类,可以把嵌入式系统分为低端系统、中端系统和高端系统三大类。下面关于低端嵌入式系统特性的叙述中错误的是()。
在μC/OS—II中有多种方法可以保护任务之间的共享数据和提供任务之间的通信。其中不能达到保护目的的方法是()。
ARM公司把ARMll之后的ARM处理器以ARMCortex为特征命名,主要用于高端应用的命名为ARMCodex-【47】_______,主要用于实时应用的命名为ARMCodex-【48】_______。
已知内存0x80000000中的内容为0x33,0x80000001中的内容为0x31,0x80000002中的内容为0x30,0x80000003中的内容为0x32,则ARM在大端模式下地址0x80000000所指示的一个字为()。
SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT,DELETE,UPDATE实现哪类功能?
设平衡的二叉排序树(AVL树)的结点个数为n,则其平均检索长度为
如果一棵二叉树结点的前序序列是A,B,C,后序序列是C,B,A,则该二叉树结点的对称序序列
随机试题
被调查人涉嫌贪污贿赂、失职渎职等(),监察机关已经掌握其部分违法犯罪事实及证据,仍有重要问题需要进一步调查,并有下列情形之一的,经监察机关依法审批,可以将其留置在特定场所:①涉及案情重大、复杂的;②可能逃跑、自杀的;③可能串供或者伪造、
催产素激惹试验(OCT)
患儿,10岁。扁桃体发炎3天,近2天来出现左膝关节剧痛,伴有高热,畏寒,烦躁不安。查体:体温39.5℃,脉搏110次/分,呼吸26次/分,血压112/75mmHg,神志清楚,左膝关节明显肿胀、皮温升高及压痛,关节活动明显受限。若患儿早期未能进行积极的处
链篦机是链篦机一回转窑球团法生产工艺的专用履带式热工设备。其作用是将合格生球依次经过抽风干燥段区域和预热段区域,从而完成脱水、预热、氧化过程,之后经铲料板送入回转窑中。链篦机烟尘中()含量较高且具有毒性。
监理大纲的主要作用是( )。
在治理管涌与流沙(土)的方法当中,水平向铺设防渗铺盖是截水防渗措施之一。水平向铺设防渗铺盖可采用()、沥青铺盖、混凝土铺盖以及土工膜。
基金持有人大会有权就下列哪些事项作出决议()
教育活动中一对最基本、最重要的人际关系是()。
Whydidpeopleinthe19thcenturybelievetheexistenceofintelligentlifeonMars?Howmanyargumentsinthispassageleadt
ThepassagegivesageneraldescriptionoftheoriginanddevelopmentofJazz.Aftertheslaverywasended,twomajortypesof
最新回复
(
0
)