首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知数据文件IN58.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsValue(),其功能是:求出这些4位数是素数的个数cnt,再把所有满足此条件的4位数依次存入数组b中,然后对数组b的4位数按从小到大的
已知数据文件IN58.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsValue(),其功能是:求出这些4位数是素数的个数cnt,再把所有满足此条件的4位数依次存入数组b中,然后对数组b的4位数按从小到大的
admin
2009-02-15
51
问题
已知数据文件IN58.DAT中存有300个4位数,并已调用读函数readDat()把这些数存入数组a中,请编制一函数JsValue(),其功能是:求出这些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=%d\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
);
fclose(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[i])) /*如果该数为素数,则将该数存入数组b中*/ { b[cnt]=a[i]; cnt++; /*并统计满足条件的数的个数*/ } for (i=0; i<cnt-1; i++) /*对数组b的4位数按从小到大的顺序进行排序*/ for (j=i+1; j<cnt; j++) if(b[i]>b[j]) { value=b[i]; b[i]=b[j]; b [j]=value; } }
解析
本题考查的知识点如下:
(1)循环的嵌套。
(2)数据的排序。
在本题中,已给出了判断素数的函数vold isP(int m),只需将数代入进行判断即可。将素数存入数组b,再对数组b中的数进行排序。排序采用“选择排序法”——第一次从第一个数据开始和所有后面的数据进行比较,与比它大(小)的数据交换位置,将数据中最大(小)的数交换到最前面。第二次从第二个数据开始与后面的数据进行比较,将本次比较中最大(小)的数据交换至第二个位置,直至最后一个数据。以此类推,则可完成题目的要求。
转载请注明原文地址:https://kaotiyun.com/show/7HfZ777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
通常使用的备份方式有()备份、增量备份、()备份3种。
按交换机所支持的局域网标准分类,目前有以太网交换机、FDDI交换机、ATM交换机和令牌环交换机,其中哪一种类型的应用最为流行()。
使用远程登录telnet对交换机进行配置,在网上的任意一台计算机,只要权限许可,都可以远程登录到交换机上,作为它的一个模拟终端对它进行配置。关于它的必备条件叙述不正确的是()。
可以通过交换机的哪条命令在屏幕上显示出保存在CAM中的交换表内容()。
如果用粗缆连接两台集线器,构建10BASE-T以太网,则两台机器的最远距离可达()。
下列选项中,关于综合型综合布线系统说法不正确的是()。
下面关于100BASE-TX的说法错误是______。
路由器的DHCP允许配置其数据库代理。可以使用下列哪一命令取消地址冲突日志的记录功能()。
在OSPF路由协议中,以下不是两台路由器成为邻居关系的必要条件是()。
下列关于IPS的描述中,错误的是______。
随机试题
所谓()是会使人的心理和精神状态受到不利影响的声音。
边缘性龈炎的最主要治疗原则是
风心病心衰用洋地黄和利尿剂治疗,出现恶心、食欲不振,心电图为室性期前收缩二联律。下列哪一种情况最可能
性温,既补肾,又祛风湿的药是()。
完善社会主义市场经济体制还要求继续改革行政管理体制,合理划分()经济社会事务的管理责权,全面推进经济法制建设,加强执法和监督。
某城市跨线桥工程,上部结构为现浇预应力混凝土连续梁,其中主跨跨径为30m并跨越一条宽20m河道;桥梁基础采用直径1.5m的钻孔桩,承台尺寸为12.0m×7.0m×2.5m(长×宽×高),承台顶标高为+7.0m,承台边缘距驳岸最近距离为1.5m;河道常水位为
下列关于投资者的风险承受能力和意愿的说法中,正确的是()。
幂级数的和函数为_______.
Recently,thenewshasbeenfilledwithreportsofthe"birdflu".46.Asiaisonaregion-widehealthalert,withgovernments
考生文件夹下存在一个数据库文件“samp2.accdb”,里面已经设计好表对象“tQuota”和“tStock”,试按以下要求完成设计:创建一个查询,计算每类产品不同单位的库存金额总计。要求,行标题显示“产品名称”,列标题显示“单位”。所建查询名为“q
最新回复
(
0
)