首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN58.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函njsValue(),其功能是:求出这些4位数是素数的个数cnt,再把所有满足此条件的4位数依次存入数组 b中,然后对数组b的4位数按从小到大
已知数据文件IN58.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函njsValue(),其功能是:求出这些4位数是素数的个数cnt,再把所有满足此条件的4位数依次存入数组 b中,然后对数组b的4位数按从小到大
admin
2009-02-24
65
问题
已知数据文件IN58.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函njsValue(),其功能是:求出这些4位数是素数的个数cnt,再把所有满足此条件的4位数依次存入数组 b中,然后对数组b的4位数按从小到大的顺序进行排序,最后调用函数writeDat()把数组b中的数输出到
OUT58.DAT文件中。
例如:5591是素数,则该数满足条件,存入数组b中,且个数cnt=cnt+1。
9812是非素数,则该数不满足条件,忽略。
注意:部分源程序已给出。
程序中已定义数组:a[300],b[300],已定义变量:cnt。
请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
试题程序:
#include<stdio.h>
int a[300],b[300],cnt=0;
int isP(int m)
{
int i;
for(i=2;i<m;i++)
if(m%i==0) return 0;
return 1;
jsValue()
{
}
main ( )
{
int i;
readDat ();
jsValue();
writeDat ();
printf ("cnt=~/od\n",cnt);
for (i=0; i<cnt; i++)
printf("b[%d]=%d\n",i,b
);
}
readDat ( )
{
FILE *fp;
int i;
fp=fopen ("IN58. DAT", "r");
for (i=0; i<300; i++)
fscanf (fp, "%d, ’", &a
);
fctose(fp);
}
writeDat ()
{
FILE *fp;
int i;
fp=fopen ( "OUT58. DAT", "w" );
fprintf ( fp, "%d\n", cnt);
for (i=0; i<cnt; i++)
fprintf(fp, "%d\n",b
);
fclose (fp);
}
选项
答案
jsValue ( ) { int i, j, value; for (i=0; i<300; i++) if (isP (a [ii ) ) /*如果该数为素数,则将该数存入数组b中*/ { b[cnt]=a[i]; } for (i=0; i<cnt-1; i++) /*对数组b的4位数按从小到大的顺序进行排序*/ for (j=i+l; j<cnt; j++) if (b [ii >b[j ] ) { value=b [i]; b[i]=b[j]; b [j] =value; } }
解析
本题考查的知识点如下:
(1)循环的嵌套。
(2)数据的排序。
在本题中,已给出了判断素数的函数void isP(int m),只需将数代入进行判断即可。将素数存入数组b,再对数组b中的数进行排序。排序采用“选择排序法”——第一次从第一个数据开始和所有后面的数据进行比较,与比它大(小)的数据交换位置,将数据中最大(小)的数交换到最前面。第二次从第二个数据开始与后面的数据进行比较,将本次比较中最大(小)的数据交换至第二个位置,直至最后一个数据。以此类推,则可完成题目的要求。
转载请注明原文地址:https://kaotiyun.com/show/uRYZ777K
本试题收录于:
三级网络技术题库NCRE全国计算机三级分类
0
三级网络技术
NCRE全国计算机三级
相关试题推荐
下列属于数据库系统阶段特点的是Ⅰ.数据结构化Ⅱ.数据共享性高Ⅲ.独立性高Ⅳ.数据无专门软件管理Ⅴ.冗余度大,不易扩充
数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的()。
在DBMS中建立DBMS的系统缓冲区,系统工作区,打开数据字典的工作在【】程序模块中完成。
霍夫曼算法可以用于
防火墙可设置于
A、 B、 C、 D、 C最坏适应算法是根据申请,在空闲区表中选择能满足申请要求的最大的空闲区。该算法的出发点是:在大空间区中装入信息后,分割剩下的空闲区相对也大,还能用于装入新的信息。该算法的优点是可以避免
下列关于信息认证的叙述中,不正确的是()。
为了实现数据终端设备之间的通信,在通信网络中必须设置交换中心,以便为需要通信的数据终端建立通信链路,通信结束后再拆除链路。目前在Internet网络中使用的交换技术主要是
下列关于哈夫曼树的叙述错误的是
随机试题
患者,女,30岁,急性支气管炎,咳嗽剧烈,咳脓性痰、量较多,咳嗽时感胸骨后疼痛。查体:T37.8℃,P98次/分。目前该患者最主要的护理问题是
1.背景某办公楼工程,地上8层,采用钢筋混凝土框架结构,设计图中有一层地下车库,外墙为剪力墙,中间部位均为框架结构。填充墙砌体采用混凝土小型空心砌块砌体。本工程基础底板为整体筏板,由于当地地下水平埋深比较浅,混凝土设计强度等级为C30P8,总方量约13
张经理打算在M市为公司购置一块建设用地,便委托当地老同学李某代办此事,双方从未谈及劳务报酬。李某经多方调查、咨询,挑选出一块令张经理满意的地皮,并做好了办理相关手续前的各种准备工作,但最终由于M市建设规划发生变化而未能实现。李某为此垫付了不少费用。对此,下
业务(1)会计分录:业务(2)会计分录:
下列关于股份支付的会计处理中,正确的有()
国家对工程招标代理机构实行()。
《普通高中美术课程标准(实验)》中设置的内容系列和模块是()。
为了进行差错控制,必须对传送的数据帧进行校验。在局域网中常采用的校验技术是(6)。CRC-CCITT的生成多项式是(7);假设一个CRC生成多项式为G(X)=4+X+1,要发送的信息码为101011,则算出的CRC校验码为(8)。假设采用的生成多项式为 G
(1)在考生文件夹中有工程文件sjt3.vbp,其中的窗体如图4所示。程序刚运行时,会生成一个有10个元素的整型数组。若选中“查找最大值”(或“查找最小值”)单选按钮,再单击“查找”按钮,则找出数组中的最大值(或最小值),并显示在标签Labe12中。请去
Thecitygovernmentrecognizesthatcitizenshavecertainnewneeds.Tobettermeetyourneeds,wehavemadeseveralchangesinco
最新回复
(
0
)