C语言程序设计:(2)【程序设计】请编写一个函数void fun(int m,int k,int xx[]),该函数的功能是:输出大于整数m后的连续n个素数存入所指的数组中。例如,若输入m(17),n

本文介绍了一个C语言程序,通过fun函数计算并存储大于给定整数m后的连续n个素数,利用嵌套循环和素数判断逻辑实现。在main()中,用户输入m和n,程序输出指定数量的素数。
摘要由CSDN通过智能技术生成
/*------------------------------------------------------------------------------
(2)【程序设计】请编写一个函数void fun(int m,int k,int xx[]),该函数的功能是:输出大于整数m后的连续n个素数存入所指的数组中。例如,若输入m(17),n(5),那么输出17后面连续的5个素数。则应输出19、23、29、31、37。
------------------------------------------------------------------------------*/
#include <stdio.h>
void fun(int m,int k,int xx[]) 
{
/**********Program**********/
	int i,j,n=0;
	for(i=m+1;;i++)
	{
		for(j=2;j<i;j++)
		{
			if(i%j==0) break;
		}
		if(i==j)
			xx[n++]=i;
		if(n==k) break;
	}
/**********  End  **********/
}
void main()
{
	int m,n,zz[1000];
	printf("请输入两个整数: ");
	scanf("%d%d",&m,&n);
	fun(m,n,zz);
	for(m=0;m<n;m++)
		printf("%4d ",zz[m]);
	printf("\n ");
}

本程序通过函数调用来输出大于整数m后的连续n个素数存入所指的数组中。看我们需要填写的部分,我们来找出这些素数需要利用循环,因为说大于整数m的连续n个素数(即k),所以for循环里面i=m+1,i一直自增。
利用j来遍历i的因子,看能否被整除,如果被整除则不是素数,break跳出。当i==j时,说明i是素数,则存储到xx[]中,定义的n则来表示素数的个数,当n与k相等说明已经找到n个素数,则break跳出结束循环

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值