首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
己知数据文件IN57.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出个位数上的数减千位数上数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的4位数依次存入
己知数据文件IN57.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出个位数上的数减千位数上数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的4位数依次存入
admin
2009-02-24
55
问题
己知数据文件IN57.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出个位数上的数减千位数上数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的4位数依次存入数组b中,然后对数组b的4位数按从大到小的顺序进行排序,最后调用函数writeDat()把数组b中的数输出到OUT57.DAT文件中。
例如: 1239,9—1-2-3>0,则该数满足条件,存入数组b中,且个数cnt=cnt+1。
8129,9-8-1-2<0,则该数不满足条件,忽略。
注意:部分源程序已给出。
程序中已定义数组:a[300),b[300],已定义变量:cnt。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio.h>
int a[300],b[300],cnt=0;
jsValue()
{
}
main ( )
{
int i;
readDat();
jsValue();
writeDat();
printf ("cnt=%d\n", cnt);
for(i=0;i<cnt;i++)
print f ("b [%d] =%d\n", i,b Iii );
}
readDat ( )
{
FILE *fp;
int i;
fp=fopen ("IN57 .DAT", "r");
for (i=0; i<300; i++)
fscanf (fp, "%d, ",&a [ii );
fclose(fp);
}
writeDat ()
{
FILE *fp;
int i;
fp=fopen { "OUT57. DAT", "w" );
fprintf (fp, "%d\n", cnt);
for (i=0; i<cnt; i++)
fprintf(fp, "%d\n",b
);
fclose (fp);
}
选项
答案
jsValue ( ) { int i, thou, hun, ten, data, j; for (i=0; i<300; i++) { thou=a [i]/1000; /*求四位数的千位数字*/ hun-a [i] %1000/100; /*求四位数的百位数字*/ ten=a [i] %100/10; /*求四位数的十位数字*/ data=a [i] %10; /*求四位数的个位数字*/ if (data-hun-ten-thou>0) /*如果个位烽减千位数减百位数减十位数大于零*/ { 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 [ii; b[i]=b[9]; b [j] =data; } }
解析
本题考查的知识点如下:
(1)运算符“%”及“/”的使用。
(2)循环结构及选择结构的使用。
在本题中,首先要将一个4位数的千位、百位、十位、个位拆成独立的数字。这里借助特殊运算符号“%” (取余)和“/” (整除)。将一个4位数整除1000则叫得到其千位上的数字,除以1000取余再整除 100则可得百位上的数字,除以100取余再整除10则可得十位上的数字,除以10取余则得个位上的数字。然后按照题意要求将各位依次相减进行判断。将符合条件的数存入数组b中,最后的排序采用“选择排序法”。
转载请注明原文地址:https://kaotiyun.com/show/tRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
设栈S和队列Q的初始状态均为空,元素e1,e2,e3,e4,e5,e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2,e4,e3,e6,e5,e1,则栈S的容量至少应是()。
文件的存取方式是由文件的性质和用户使用文件的情况而确定的,一般有两种存取方式,它们是
对数据库数据的删除是由数据库管理系统的()功能模块实现的。
在计算机上,高级语言程序一般称为【】,不能直接执行,必须将他们翻译成具体机器的机器语言程序才能执行,这种机器语言程序又称为目标程序。
若构成文件的基本单位是字符,这一类文件称为()。
下列哪一个术语与数据的存储结构无关?
设有关键码序列(Q,G,M,Z,A,N,B,P,X,H,Y,S,T,L,K,E),采用二路归并排序法进行排序,下面哪一个序列是第二趟归并后的结果?()A)G,Q,M,Z,A,N,B,P,H,X,
在下列叙述中,错误的是
文件在存储设备上的存储位置是由()决定的。
假定我们要建立一个学术论文数据库,存储如下信息:*学术期刊有期刊编号、期刊名、发行单位;*作者有作者编号、作者姓名、电子邮件;*论文有论文编号、论文标题、摘要、正文;*每篇论文只被一个期刊录用,每个期刊可以录用多篇论文;*每篇
随机试题
A.M1受体激动药B.M受体阻断药C.AChE抑制剂D.DA受体激动药E.NMDA受体拮抗剂溴隐亭
在进行人员素质测评的过程中,要依据岗位的具体要求来测评员工,考察员工是否具备岗位所要求的素质和能力。这表明人员素质测评要基于()
股票所包含的实际资产价值为()
静脉。肾盂造影中引起迷走神经反应综合征的原因是
下列关于旁站工作内容的说法正确的有()。
现阶段()的会计软件已比较成熟了。
《中国人民银行法》对货币政策的目标的规定是()。
劳申伯格、约翰斯和沃霍尔都是美国波普艺术的典型代表。()
有些群众生活困难,虽有发展潜力,但现在难以靠自己改变目前的处境,需要扶一把。有人认为,资源和就业的配置要通过市场解决,政府不好包办,但市场不可能自动实现社会收入的公平与协调,也不可能顾及全社会的扶贫救弱,假如困难群体陷于无助,贫富差距过大,无疑会影响社会的
对残疾儿童进行教育的重要依据之一是()
最新回复
(
0
)