首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。 例如,若输入:17,则应输出: 4 6 8 9 10 12 14 15 16。 注意:部分源程序在文件PROG1.C中。
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。 例如,若输入:17,则应输出: 4 6 8 9 10 12 14 15 16。 注意:部分源程序在文件PROG1.C中。
admin
2018-09-27
46
问题
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。
例如,若输入:17,则应输出:
4 6 8 9 10 12 14 15 16。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 void fun(int m,int *k,int xx[])
3 {
4
5 }
6 main()
7 {
8 int m,n,zz[100];
9 void NONO();
10 printf(’’\nPlease enter aninteger number between 10 and100:’’);
11 scanf(’’%d’’,&n);
12 fun(n,&m,zz);
13 printf(’’\n\nThere are%d nonprime numbers less than%d:’’,m,n);
14 for(n=0; n<m; n++)
15 printf(’’\n%4d’’,zz[n]);
16 NONO();
17 }
18 void NONO()
19 {
20 /*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
21 int m,n,zz[100];
22 FILE *rf,*wf;
23 rf=fopen(’’in.dat’’,’’r’’);
24 wf=fopen(’’out.dat’’,’’w’’);
25 fscanf(rf,’’%d’’,&n);
26 fun(n,&m,zz);
27 fprintf(wf, ’’%d\n%d\n’’,m,n);
28 for(n=0;n<m; n++)
29 fprintf(wf, ’’%d\n’’,zz[n]);
30 fclose(rf);
31 fclose(wf);
32 }
选项
答案
1 int i,j; 2 int t=0; //初始化数组个数 3 for(i=2,i<m;i++) //循环判断小于n的数是否为素数 4 { j=2; 5 while(j<i) 6 { if(i%j==0) //如果i不是素数 7 { xx[t]=i; 8 t++; 9 break; 10 } 11 j++;} 12 *k=t; }
解析
该程序功能是将所有大于1小于整数m的非素数存入xx所指数组中。求素数的常用方法是:从2到m-1去除m,如果中间的任何数被整除,则不是素数。
(1)根据求素数的方法判断数i是否为素数。
(2)把不是素数的数留下来,其方法是:如果该数是素数则不处理;如果不是素数则放到数组xx中,并且把数组的下标加1,为下一个不是素数的数放在数组中做准备。
(3)返回个数,把xx数组中已经写入的数的个数返回即可,即把数组xx的最大下标加1返回即可。
转载请注明原文地址:https://kaotiyun.com/show/H8xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在数据结构中,从逻辑上可以把数据结构分为______。
概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()。
设计程序时,应采纳的原则之一是()。
若变量a,b 已定义为int类型并赋值21和55,要求用printf函数以a=21,b=55的形式输出,请写出完整的输出语句[]。
以下程序的功能是将字符串s中所有小写字母’a’删去,请填空。#include<stdio.h>main(){chars[]="absuWWUDJFKFLaaakdK";inti,j;for(i=j=0;s[i]!=
以下程序运行时若要正确输出函数的入口地址和输入数的绝对值,应在程序空缺处填入的正确选项是()。abs(intx){if(x>=0)returnx:elsereturn-x;}main(){i
有以下程序段: typedef struct NODE {int num; struct NODE *next; }OLD; 以下叙述中正确的是 ______。
若有下列定义(设int类型变量占2个字节):floatx=123.4567;则下列语句:printf("x=%5.2f",x);输出的结果是()。
已知a所指的数组中有N个元素。。函数fun的功能是,将下标k(k>0)开始的后续元素全部向前移动一个位置填空。voidfun(inta[N],intk){inti:for(i=k;i
随机试题
供应股骨颈和股骨头血运的血管有
定量研究的准备阶段不需要做的工作是()。
长期使用广谱抗菌药的病人体检时常发现
成人术后常规禁食和禁水的时间是()
材料采购合同双方当事人对产品的质量检测、试验结果发生争议,应按( )的规定,请标准化管理部门的质量监督检验机构进行仲裁检验。
个体在解决问题的过程中表现为搜集或综合信息与知识,运用逻辑规律,缩小解答范围,直至找到唯一正确的解答的认知方式为()认知方式。
大抵是对那些过分关心的回帖有些不堪承受的好笑,她于是在自己的一首诗后的跟帖做了一个不_________的答复:文字只是一种姿态,不要把作者和其笔下的人物作_________的链接。填入画横线部分最恰当的一项是()。
云南是“生物王国”,而且地处大江大河的上游,是江河下游地区的“生态屏障”。曾有一段时间,云南想通过发展旅游等第三产业绕过工业化来发展,最大限度地保护生态环境和民族文化。现在看来,如果工业或者相关产业发展不到位,第三产业就没有服务对象,不仅经济社会发暖受到制
肺心病时,下列哪一种病变最不容易见到
下列对耕地占用税的特点,表述正确的是()。
最新回复
(
0
)