首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列算法说明和代码,将应填入(n)处的语句写在对应栏内。 【说明】 本程序用古典Eratosthenes;筛选法求从2起到指定范围内的素数。如果要找出2~10中的素数,开始时筛中有2~10的数,然后取走筛中最小的数2,宣布它是素数,并把
阅读下列算法说明和代码,将应填入(n)处的语句写在对应栏内。 【说明】 本程序用古典Eratosthenes;筛选法求从2起到指定范围内的素数。如果要找出2~10中的素数,开始时筛中有2~10的数,然后取走筛中最小的数2,宣布它是素数,并把
admin
2010-01-15
76
问题
阅读下列算法说明和代码,将应填入(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://www.kaotiyun.com/show/tBjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel2010中的A1单元格输入公式(),按回车键后,该单元格值为0.25。
企业建立生产和库存管理系统的目的不包括()。
某金融企业正在开发移动终端非现场办公业务,为控制数据安全风险,采取的数据安全措施中并不包括______。
下列关于Word2007拼写和语法检查的叙述中,不正确的是__________。
______不属于企业信息系统存在的问题。
计算机使用了一段时间后,系统磁盘空间不足,系统启动时间变长,系统响应延迟,应用程序运行缓慢,此时,需要对系统进行优化。(28)________________不属于系统优化工作。
在Excel中,函数“=AVERAGE(A1,.B4)”的含义是()。
在Excel2010中,设单元格A1、A2、A3、A4中的值分别为20、3、16、20,若在单元格B1中输入函数“=PR0DUCT(ApA2)/MAX(A3,A4)”,按回车键后,则B1单元格中的值为(
Windows XP的许多应用程序的“文件”菜单中,都有“保存”和“另存为”两个命令。以下对这两个命令的叙述,正确的是(36)。
解决网络安全问题的技术分为主动防御保护技术和被动防御保护技术两大类,__________属于被动防御保护技术。
随机试题
精美的艺术世界,是一个令人神往的奇妙世界。在这个世界中,相同时代和地域,或者不同时代和地域的作者与读者,都可以按不同的社会倾向和审美趣味,交换着对社会人生的体验,进行着心的交流。莎士比亚笔下的王子复仇,可以刺激东方的读者去思索世界的罪恶与正义;曹雪芹笔下的
北京市区某银行2008年第四季度买卖企业债券出现负差55万元;2009年第一季度购买企业债券共支付564万元,其中包括各种税费0.7万元;第二季度转让企业债券取得收入690万元,在转让企业债券过程中,支付各种税费1.1万元。该银行2009年第二季度上述业务
甲企业将货物卖给乙企业,双方签订了购销合同,丙企业作为该合同的担保人,王某作为该合同的证人。该购销合同的印花税的纳税人为()。
评估战略备选方案的成功标准不包括()。
下面是一位教师的反思日记:回顾以前,我感觉到,过去这一学期的教学比我前十年的教学总和都更让我明白什么叫教育。以前,我教好几个班,并且每班人数都在80左右。每天,我的大部分工作时间都在备课,与学生交流很少,我只考虑自己能提供什么,很少考虑学生需要什
(2016·安徽)美国教育学家布鲁纳提出的课程理论是()
很多时候,我们的问题在于不能正确地________个人和社会的界限。事实上,如果________了个人,就不可能加强集体;如果________了个人,集体也不可能获得自由。依次填入画横线部分最恰当的一项是()。
实施BSP研究的主要活动中应包括多项活动内容,其中最基础的活动是()。Ⅰ.定义企业过程Ⅱ.定义数据类Ⅲ.成果报告Ⅳ.定义信息结构
设有如下函数:FunctionDelSpace(chAsString)AsInteger Dimn%,st$,c$ st="" n=0 Fork=1ToLen(ch) c=Mid(ch,k,1) I
下面是重载为非成员函数的运算符的函数原型,其中错误的是()。
最新回复
(
0
)