首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写函数int fun(int lim,int aa[MAX]),其功能是求出小于或等于lim的所有素数并放在aa数组中,并返回所求出的素数的个数。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花
编写函数int fun(int lim,int aa[MAX]),其功能是求出小于或等于lim的所有素数并放在aa数组中,并返回所求出的素数的个数。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花
admin
2017-02-24
76
问题
编写函数int fun(int lim,int aa[MAX]),其功能是求出小于或等于lim的所有素数并放在aa数组中,并返回所求出的素数的个数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
1 #include<conio.h>
2 #include<stdio.h>
3 #include<stdlib.h>
4 #define MAX 100
5 int fun(int lim,int aa[MAX])
6 {
7
8 }
9 void main()
10 {
11 FILE*wf;
12 int limit,i,sum;
13 int aa[MAX];
14 system("CLS");
15 printf("输入一个整数:");
16 scanf("%d",&limit);
17 sum=fun(limit,aa);
18 for(i=0;i<sum;i++)
19 {
20 if(i%10==0&&i!=0) /*每行输出10个数*/
21 printf("\n");
22 printf(”%5d”,aa
);
23 }
24 /*****************/
25 wf=fopen("out.dat","W");
26 sum=fun(15,aa);
27 for(i=0;i<sum; i++)
28 {
29 if(i%10==0&&i!=0) /*每行输出10个数*/
30 fprintf(wf,"\n");
31 fprintf(wf,"%5d",aa
);
32 }
33 fclose(wf);
34 /*****************/
35 }
选项
答案
int fun(int lim,int aa[MAX]) { int i,j,k=0 ; for(i=2;i<=lim;i++)/*求出小于或等于lim的全部素数*/ {for(j=2;j<i;j++) if(i%j==0)break ; if(j>=i) aa[k++]=i;/*将求出的素数放入数组aa中*/ } return k;/*返回所求出的素数的个数*/ }
解析
本程序如果一个数是合数,那么它的最小质因数肯定小于等于他的平方根。使用for循环语句查找小于lim的所有数,使用内嵌的循环判断语句判断该数是否为素数。在做这道题时,需要重点掌握素数的判定方法:
for(j=2;j<sqrt(i);j++)
if(i%j==0)reak;
转载请注明原文地址:https://www.kaotiyun.com/show/0gDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序运行后的输出结果是______。#include<stdio.h>main(){chars[20];scanf("%s",s);printf("%s",s);}运行程序,输入HOWAREYOU。
下列程序的运行结果是______。main(){ints=0,i=1;while(s<=10){s=s+i*i;i++;}printf("%d",--i);}
下列叙述中错误的是()。
下面程序的运行结果是______。#include<stdio.h>intf(inta[],intn){if(n>1)returna[0]+f(a+1,n-1);elsereturna[0];}main(){intaa[10]=
以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数5时(注意:n不得大于10),程序运行结果如下:ABCDEFGHIJKLMNO请填空完成该程序。main(){in
有以下程序段,且变量已正确定义和赋值for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("s=%f\n\n",s);请填空,使下面程序段的功能与之完全相同S=1.0;k=1;while([8]
C语言规定,在一个源程序中,main函数的位置
已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是
下面程序的功能是:计算110之间的奇数之和与偶数之和,请填空。#includemain(){inta,b,c,I;a=c=0;for(I=0;I
随机试题
下列决策方法具有“迂回探索”特点的是【】
银行对账单不属于会计凭证,因而也就不属于会计档案。()
从骨折到完全骨化称临床愈合,一般需
某成年男性出现疲倦,体重下降,机体免疫力下降,伴有伤口愈合不良,营养性水肿。血常规检查Hb<130g/L,血浆蛋白低于正常。此时最适宜采取的膳食措施是
根据《生产过程危险和有害因素分类与代码》(GB/T13861—2009),危险源分为()。
涵化是指不同文化的群体间发生持续的接触,从而导致原有文化发生变迁的现象。根据上述定义,下列不属于涵化的是:
为了保持汉语的纯洁性,禁止在汉语出版物上的文章中夹杂外来词汇(比如英语1,就这个现象谈下你的看法。(2011年2月24日下午国家部、办、委、局面试真题)
由美国次贷危机引发的2008年国际金融危机是自20世纪30年代大萧条以来最为严重的全球性经济危机,它迅速从局部发展到全球。从发达国家传导到新兴市场国家,从金融领域扩散到实体经济领域,造成了一系列灾难性后果。在这场危机的影响下,西方国家在经济生活、政治生活和
在考生文件夹下,打开文档WORD1.DOCX,按照要求完成下列操作并以该文件名(WORD1.DOCX)保存文档。【文档开始】声明科学是中国发展的机遇新华网北京10月28日电在可预见的未来,信息技术和声明科学将是世界科技中最活跃
FlatswerealmostunknowninBritainuntilthe1850swhentheyweredeveloped,alongwithotherindustrialdwellings,forthela
最新回复
(
0
)