首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。 例如,若输入:17,则应输出: 4 6 8 9 10 12 14 15 16。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。 例如,若输入:17,则应输出: 4 6 8 9 10 12 14 15 16。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函
admin
2019-09-02
95
问题
请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。
例如,若输入:17,则应输出:
4 6 8 9 10 12 14 15 16。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
void fun(int m,int*k,int xx[])
{
}
main()
{
int m,n,zz[100];
void NONO();
printf("\nPlease enter an integer number between 10 and 100:”);
scanf("%d",&n);
fun(n,&m,zz);
printf("\n\nfhere are%d nonprime numbers less than%d:",m,n);
for(n=0; n<m; n++)
printf("\n%4d",zz[n]);
NONO();
}
void NONO()
{
/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件*/
int m,n,zz[1 00];
FTLE*rf,*wf;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
fscanf(rf,"%d",&n);
fun(n,&m,zz);
fprintf(wf, "%d\n%d\n",m, n);
for(n=0; n<m; n++)
fprintf(wf,"%d\n",zz[n]);
fclose(rf);
fclose(wf);
}
选项
答案
int i,j; int t=0; //初始化数组个数 for(i=2;i<m;i++) //循环判断小于n的数是否为素数 {j=2; while(j<i) {if(i%j==0) //如果i不是素数 (xx[t]=i; t++; break; } j++;} *k=t;}
解析
该程序功能是将所有大于1小于整数m的非素数存入xx所指数组中。求素数的常用方法是:从2到m-1去除m,如果中间的任何数被整除,则不是素数。
(1)根据求素数的方法判断数i是否为素数。
(2)把不是素数的数留下来,其方法是:如果该数是素数则不处理;如果不是素数则放到数组xx中,并且把数组的下标加1,为下一个不是素数的数放在数组中做准备。
(3)返回个数,把xx数组中已经写入的数的个数返回即可,即把数组xx的最大下标加1返回即可。
转载请注明原文地址:https://kaotiyun.com/show/rdRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新的数,并作为函数值返回。例如,从主函数输入一个整数:27638496,函数返回值为:26846。请在程序的下划线处填入正确的内容并把下
函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]、……中,把偶数从数组中删除,奇数个数通过函数值返回。例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据
给定程序MODI1.C中函数fun的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。请修改程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行和删行,也不得更改程序的结构!#include#def
给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生
给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。例如,输入的数为:551234,输出结果应当是:a=55.0,b=34.0,c=12.0。请改正程序中的错误,使
请编写函数fun,其功能是:计算并输出下列多项式的值:例如,在主函数中从键盘给n输入50后,输出为:s=1.718282。注意:要求n的值大于1但不大于100。部分源程序在文件PROG1.C中。请勿改动主函数mai
给定程序MODI1.C中函数fun的功能是:统计一个无符号整数中各位数字值为零的个数,通过形参传回主函数;并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为零的个数为3,各位上数字值最大的是8。请改正函数f
函数fun的功能是:统计长整数n的各个位上出现数字1、2、3的次数,并通过外部(全局)变量c1,c2,c3返回主函数。例如:当n=123114350时,结果应该为:c1=3c2=1c3=2。请在程序的下划线处填入正确的内容并把下划线删除,使程
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参P已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为:****A*BC*DEF*
随机试题
电容器对交流电流的阻碍能力称为________,用符号________表示,单位是________。
上颁全口义齿基托后缘止于
收涩药不适宜的病证有()。
填方高度的管涵顶面填土()mm以上才能用压路机碾压。
下列模块中,()与应收、应付管理模块之间存在数据传递关系。
个人投资者是证券市场最广泛的投资主体,以下不属于个人投资者的特点是()。
根据《行政诉讼法》的规定,下列各项中,当事人可以提起行政诉讼的案件有( )。
通货膨胀的成因包括()。
民警罗某于2013年1月3日中午巡逻下班后开着警车回家,因无处停车,就将警车停靠在自家小区附近的禁停路段,后被某市民悄悄贴上手写的“违法行为告知书”,样式非常类似于交警开具的罚单。网民张某用照相机将这一幕拍下来,并上传到微博,引起网民热议。这份
A、 B、 C、 CItalwaysbeginsafewminuteslateanswerswhenwilltheperformancebegin.Choice(A)confusesthes
最新回复
(
0
)