首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件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
50
问题
已知数据文件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全国计算机三级
相关试题推荐
在μC/OS—II操作系统中有多种方法可以保护任务间的共享数据并支持任务之间的通信。下列各项中不能用于保护任务间的共享数据或支持任务间通信的是()。
在微内核操作系统结构中,将【67】、低级存储管理、中断处理和【68】等必须的基本功能编译成一个功能精简、空间紧凑的模块,称为微内核。
下面是关于嵌入式系统中使用的无线通信接口或技术的叙述,其中错误的是()。
以下不属于实时操作系统特征的是()。
已知内存单元0x60000000~0x60000003以小端模式存放一个32位数据0x32303134,R1=0x60000000,R0=0,执行ARM指令LDRHR0,[R1]之后,R0的值为()。
μC/OS-Ⅱ的事件控制块有4种类型,需要使用4个不同的函数来创建。如下选项中哪一个用于创建事件控制块?
下图是嵌入式系统硬件部分的逻辑组成及其与外部世界关系的示意图,其中CPUI,的组成部分A是41【】:组成部分B是【42】。
μC/OS—II的事件控制块有4种类型,需要使用4个不同的函数来创建。如下选项中哪一个用于创建事件控制块?
用二维表结构表示实体及实体间联系的数据模型称为
对于给出的一组权w={10,12,16,21,30},通过霍夫曼算法求出的扩充二叉树的带权外部路径长度为
随机试题
在考生文件夹下,已有“tTest.txt”文本文件和“sampl.mdb”数据库文件,“sampl.mdb”中已建立表对象“tStud”和“tScore”。试按以下要求,完成表的各种操作:(1)将表“tScore”的“学号”和“课程号”两个字段设
在图样上标注复合斜面夹角,一般垂直于斜面轮廓线的平面可用()表示。
女孩,4岁。来自农村。1990年7月因发热、头痛4d,伴呕吐、抽搐住院。体检:神志欠清,压眶有反应,双侧瞳孔4mm,对光反射存在,颈有抵抗,心、肺无异常,腹软,腹壁反射未引出,四肢肌张力较高,克氏征、布氏征、巴氏征均阳性,确诊为流行性乙型脑炎。该病的主要传
A、15~18B、13~16C、8~16D、7~9E、3~8增溶剂的HLB值()
下列不属于违反公序良俗原则的行为的是( )。
下列小适合进行牛市套利的商品有()。
拟开展基金销售业务的机构,应当向工商注册登记所在地的()派出机构进行注册并取得相应资格。[2017年9月真题]
如果运动员想有更出色的表现,他们应该在高海拔地区训练。在高海拔地区,身体中每单位体积的血液里含有的红血球数量比在海平面上多。红血球运输氧气,而氧气供应充足便能提高竞技水平,在高海拔地区训练的运动员每单位体积的血液能运载更多的氧气,这样便会有更出色的表现。
Ifyou’vegotanearforlanguages,askillofcodingorasteadyhandanddon’tfaintatthesightofbloodthenyourcareerlo
Scholarsandstudentshavealwaysbeengreattravelers.Theofficialcasefor"academicmobility"isnowoftenstatedinimpress
最新回复
(
0
)