首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列算法说明和代码,将应填入(n)处的语句写在对应栏内。 【说明】 本程序用古典Eratosthenes;筛选法求从2起到指定范围内的素数。如果要找出2~10中的素数,开始时筛中有2~10的数,然后取走筛中最小的数2,宣布它是素数,并把
阅读下列算法说明和代码,将应填入(n)处的语句写在对应栏内。 【说明】 本程序用古典Eratosthenes;筛选法求从2起到指定范围内的素数。如果要找出2~10中的素数,开始时筛中有2~10的数,然后取走筛中最小的数2,宣布它是素数,并把
admin
2010-01-15
52
问题
阅读下列算法说明和代码,将应填入(n)处的语句写在对应栏内。
【说明】
本程序用古典Eratosthenes;筛选法求从2起到指定范围内的素数。如果要找出2~10中的素数,开始时筛中有2~10的数,然后取走筛中最小的数2,宣布它是素数,并把该素数的倍数都取走。这样,第一步以后,筛子中还留下奇数3、5、7、9;重复上述步骤,再取走最小数3,宣布它为素数,并取走3的倍数,于是留下5、7。反复重复上述步骤,直到筛中为空时,工作结束,求得2~10中的全部素数。
【代码】
# include <stdio.h>
# define MAX 22500
/*程序中用数组sieve表示筛子,数组元素sieve
的值为1时,表示数i在筛子中,值为-1时表示数i已被取走*/
main()
{ unsigned int i, range, factor, k;
int sieve[MAX];
printf("please input the range:");
scanf("%d", &range);/* range 指出在多大的范围内寻找素数*/
for(i=2; i<=range; i++)
(1);
factor=2;
while (factor<=range)
{ if((2)) /* 筛中最小数是素数 */
{ printf("%d\t", factor);
k=factor;
while (k<=range) /*移走素数的倍数 */
{ (3);
k=(4);
}
}
(5);
}
}
选项
答案
(1)sieve[i]=i (2)sieve[factor]>0 (3)sieve[k]=-1 (4)k+factor (5)factor++
解析
本题考查在C语言中实现素数的选取。
题目要求从指定范围内的数中选取其中的素数,并给出了相关的选取方法。在做题前我们首先需要清楚什么是素数,素数又叫质数,是指除1和自身之外,没有其他约数的正整数。—下面我们来分析程序。
第(1)空在第一层循环体下面,题目要求用数组sieve表示筛子,但在程序中并没有给数组输入值,此空应该是在循环下往数组中存放数值,其存放的位置与数值的大小对应,因此,此空答案为sieve
=i。
第(2)空是条件判断语句的条件,从注释中我们可以知道,这个条件判断语句的作用是筛中最小数是素数,是素数的话一定在数组中,元素的值就应该大于0。那么条件应该是判断数组中当前位置的值是否大于0,如果是,则执行判断语句下的语句,即筛选出这个数且这个数是素数。结合题目给出的条件,知道此空答案为sieve[factor]>0。
第(3)空是移走素数的倍数这个循环下面的语句,此循环的作用就是移走当前最小素数的倍数,题目要求在移走了数值以后,数组中相应的值为-1,那么此空的作用应该是将数组中该移走数的相应值变为-1,因此,此空答案为sieve[k]=-1。
第(4)空是紧接着上面一空来的,变量k中存放的是数组当前的下标,而变量factor中存放的是当前最小的素数。此空所在循环体的作用是移走当前最小素数的倍数,求倍数时,只要在该数的基础上加上该数,那就是两倍,再加一个就是三倍,由此直到最大范围。因此,此空答案应该是k+factor。
第(5)空是while(factor<=range)循环下的最后一条语句,我们从程序中可以看出,factor中存放的是当前的最小素数,同时也是此素数在数组中的下标位置。题目告诉我们在处理完当前素数后,应该去取下一个素数,下标位置往后移动。因此,此空答案为factor++。
转载请注明原文地址:https://kaotiyun.com/show/tBjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
我国的信息安全法律法规包括国家法律、行政法规和部门规章及规范性文件等。()属于部门规章及规范性文件。
某企业甲乙两个部门招聘职工中,男女应聘人数和录用人数情况如下表:从上表看出,各部门女性录用率都大于男性录用率。从该企业合计来看,()。
某单位的统计报表比较多,采用表号(报表的编号)的好处是______。
四位二进制数(从0000到1111)中,不含连续三位相同数字的数共有(4)个。
打开DOC文档48.doc,有如下表格,欲在空白单元格中计算出整行其他四个单元格的数值之和,应在空白单元格中插入公式(48)。
某机构准备发布中国互联网发展年度报告。报告分四个方面:全网概况、访问特征、渠道分析和行业视角。用户24小时上网时间分布应属于()方面的内容。
企业信息化总体架构中,计算机硬件、网络系统、操作系统、数据库管理系统等属于(16)。
编译程序的作用是将高级程序语言源程序翻译为(4)。
对一批数据进行质量分析时,需要检查的问题一般不包括_______。
随机试题
Word生成的模板文件的文件扩展名为_______。
婴幼儿腹泻重度脱水伴低血容量性休克,扩容时应首选
某建设项目投资构成中,设备及工、器具购置费为2000万元,建筑安装工程费为1000万元,工程建设其他费为500万元,预备费为200万元,建设期贷款为1800万元,应计利息80万元,流动资金贷款400万元,则该建设项目的工程造价为()万元。
融资决策是对资金融通活动确定目标和方向,合理选择最优行动方案的活动进程。()
在土的总应力的应力路径图中,应力路径的箭头与纵坐标的夹角应为下列()项。
新中国第一家国营华侨服务社诞生于()。
“一带一路”倡议自提出以来,已逐步成为当今世界广泛参与的重要国际合作平台,下列有关2019年“一带一路”发展成果的说法正确的是:
Ahundredyearsagoitwasassumedandscientifically"proved"byeconomiststhatthelawsofsocietymadeitnecessarytohave
Nowomancanbetoorichortoothin.Thissayingoften【C1】______thelateDuchessofWindsor【C2】______muchoftheoddspirito
PeopletravelalotwithHeavenAirbecausetheyknowtheywillgetwhattheywant.Theywanttogoquicklyandsafelyacro
最新回复
(
0
)