首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN57.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函幼sValue(),其功能是:求出个位数上的数减千位数上数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的4位数依次存入数
已知数据文件IN57.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函幼sValue(),其功能是:求出个位数上的数减千位数上数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的4位数依次存入数
admin
2009-02-19
34
问题
已知数据文件IN57.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函幼sValue(),其功能是:求出个位数上的数减千位数上数减百位数上的数减十位数上的数大于零的个数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
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++)
printf("b[%d];%d\n",i,b
);
{
readDat()
{
FILE *fp;
int i;
fp=fopen("IN57.DAT","r");
for(i=0;i<300;i++)
fscanf(fp,"%d,",&a
);
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>O) /*如果个位数减千位数减百位数减十位数大于零*/ { b[cnt]=a[i]); /*则将满足条件的数存入数组b中*/ cnt++ /*统计满足条件的数的个数*/ } } for(i=0;i<cnt-1;i++) /*对数组b的4位数按从大到小的顺序进行排序*/ for(j=i+l;j<cnt;i++) if(b[i]<b[i]) { data=b[i]; b[i]=b[i]; b[j]=data; } }
解析
本题考查的知识点如下:
(1)运算:符“%”及“/”的使用。
(2)循环结构及选择结构的使用。
在本题中,首先要将一个4位数的千位、百位、十位、个位拆成独立的数字。这里借助特殊运算符号“%”(取余)和“/”(整除)。将一个4位数整除1000则可得到其千位上的数字,除以1000取余再整除100则可得百位上的数字,除以100取余再整除10则可得十位上的数字,除以10取余则得个位上的数字。然后按照题意要求将各位依次相减进行判断。将符合条件的数存入数组b中,最后的排序采用“选择排序法”。
转载请注明原文地址:https://jikaoti.com/ti/20Q7FFFM
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
芯片组是构成主板控制电路的核心,在一定意义上说,它决定了主板的性能。下面是关于芯片组功能的叙述Ⅰ.芯片组提供对CPU的支持Ⅱ.芯片组提供对主存的控制Ⅲ.芯片组提供中断控制、定时、DMA控制等功能Ⅳ.芯片组提供对标准总线槽和标
Windows98提供的WindowsMediaPlayer是一个功能强大的多媒体播放软件,可以从Microsoft有关网站不断升级。该软件目前不能播放下列哪种类型的音视频文件?
WindowsXP支持ACPI电源管理标准,该标准为PC主机定义了6种不同的能好状态(S0~S5)。其中,S0对应正常工作状态,S1~S3均对应待机状态,S4对应______状态,S5对应完全关闭状态。
在CCDOS中,汉字内码采用双字节内码,它与GB2312—80国标码有一定的关系,例如“啊”字的国标码为3021H,其汉字内码为【】H。
PC/XT 微机中,产生系统时钟的时间基准使用了Intel 8253定时器/计数器的( )。
下图是嵌入式系统硬件部分的逻辑组成及其与外部世界关系的示意图,其中CPU中的组成部分A是【41】;组成部分B是【42】。
μCOS—Ⅱ操作系统的下面4个主要函数中,只有一个是与任务调度相关的,它是()。
ARM处理器有7种异常,按向量地址从小到大排列的顺序是:【47】、未定义指令UND、软件中断SWI、指令预取中止PABT、数据访问中止DABT、【48】以及快速中断FIQ。
小端模式下ARM指令序列如下:LDRR0,=0x13579246LDRR1,=0x10000000STRR0,[R1,#8]!执行后,内存0x10000008中的值=【55】,R1=【56】。
单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针P指向的的单链表结点之后,下面的操作序列中哪一个是正确的?
随机试题
中国近代最早用资产阶级史学观点和方法来研究中国历史的人是()
汇集宋代以前儿科学术成就,成为当时世界上内容最完备的儿科专著是
根据商业银行的业务特征及诱发风险的原因,巴塞尔委员会将商业银行面临的风险划分为()等类别。
对于旅游团在饭店以外的餐馆用餐,地陪应事先核实地接社计调部门联系的()和特殊要求。
教学活动就其本质而言,是一种()
根据下列资料,回答下列小题:2014年1季度第二产业增加值同比提高金额最大的为()。
【《关税与贸易总协定》】华东师范大学2002年世界当代史真题
在窗体中添加一个命令按钮,名称为Command1,两个文本框名称分别为Text1、Text2,然后编写如下程序:PrivateSubCommand1_Click()a=Text1.Textb=Text2.
Beesareinsects,whichyoucanfindallovertheworld.Allbeescanfetchnectarfromtheflowers.
PASSAGETHREEWhatdidRechtschaffenwanttofindoutinhisresearchinthe1980s?
最新回复
(
0
)