为了账号安全,请及时绑定邮箱和手机立即绑定

用循环语句解决问题,找出m~n之间的素数

用循环语句解决问题,找出m~n之间的素数

C
踏月光 2016-11-03 19:54:50
求出m~n之间的所有素数,并且要求5个一换行。
查看完整描述

3 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

#include<stdio.h>
#include<math.h>
int isPrime(int n)
{
	int i;
	for(i=2;i<=sqrt(n);i++)
	{
		if(n%i==0)
			return 0;
	}
	if(n==1)
		return 0;
	return 1;
}
void main() 
{ 
	int i,j,t,count=0;
	int a,b,flag;
	printf("请输入两个正整数:");
	scanf("%d%d",&a,&b);
	if(a>b)
	{
		t=a;
		a=b;
		b=t;
	}
	printf("[%d,%d]的素数有:\n",a,b);
	for(i=a;i<=b;i++)
	{
		if(isPrime(i))
		{
			printf("%5d",i);
			count++;
		}
		if(count%5==0)
		{
			printf("\n");
		}
	}
	printf("\n");
}


查看完整回答
2 反对 回复 2016-11-03
点击展开后面2
?
望远

TA贡献1017条经验 获得超1032个赞

#include<stdio.h>
#include<math.h>
void main() 
{ 
	int i,j,t,count=0;
	int a,b,flag;
	printf("请输入两个正整数:");
	scanf("%d%d",&a,&b);
	if(a>b)
	{
		t=a;
		a=b;
		b=t;
	}
	printf("[%d,%d]的素数有:\n",a,b);
	for(i=a;i<=b;i++)
	{
		flag=1;
		for(j=2;j<=sqrt(i);j++)
		{
			if(i%j==0)
				flag=0;
		}
		if(i==1)
			flag=0;
		if(flag)
		{
			printf("%5d",i);
			count++;
		}
		if(count%5==0)
		{
			printf("\n");
		}
	}
	printf("\n");
}


查看完整回答
2 反对 回复 2016-11-03
  • 3 回答
  • 1 关注
  • 1753 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信