求素数:输入两个正整数m和n,求出[m,n]区间的所有素数。用c语言
2个回答
展开全部
#include<stdio.h>
#include<math.h> /*根号函数在这个头文件里*/
char prime(int data) /*判断是不是质数的函数*/
{ int i;
for(i=2;i<=sqrt(data);i++) /*sqrt是根号函数*/
{ if(data%i==0) /*求模为0代表除尽*/
return 0; /*0代表不是质数*/
}
return 1; /*当足次循环的时候,代表是质数,会执行到此句*/
}
void main()
{ int m,n;
scanf("%d%d",&m,&n); /*这里默认你输入的第一个数据小第二个数据大,也没有做合法性检查,你可以适当改改*/
for(;m<=n;m++)
{ if(prime(m)==1)
printf("%d\t",m);
}
}
#include<math.h> /*根号函数在这个头文件里*/
char prime(int data) /*判断是不是质数的函数*/
{ int i;
for(i=2;i<=sqrt(data);i++) /*sqrt是根号函数*/
{ if(data%i==0) /*求模为0代表除尽*/
return 0; /*0代表不是质数*/
}
return 1; /*当足次循环的时候,代表是质数,会执行到此句*/
}
void main()
{ int m,n;
scanf("%d%d",&m,&n); /*这里默认你输入的第一个数据小第二个数据大,也没有做合法性检查,你可以适当改改*/
for(;m<=n;m++)
{ if(prime(m)==1)
printf("%d\t",m);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int i,flag, M=0,N=0;
printf("输入素数起始范围:");
scanf("%d %d",&M,&N);
for (M;M<N;M++)
{
//flag =0;
for (i=2;i<M;i++)
{
if (M%i!=0)
{
flag=1;
//printf("%d ",M);
}
else
{
flag=0;
break;
}
}
if (flag!=0)
{
printf("%d ",M);
}
}
printf("输入素数起始范围:");
scanf("%d %d",&M,&N);
for (M;M<N;M++)
{
//flag =0;
for (i=2;i<M;i++)
{
if (M%i!=0)
{
flag=1;
//printf("%d ",M);
}
else
{
flag=0;
break;
}
}
if (flag!=0)
{
printf("%d ",M);
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询