求m~n之间所有的素数。m和n的值由用户键入。为使程序结构清晰,设置一个函数 用来判断x是否为素数。

求m~n之间所有的素数。m和n的值由用户键入。为使程序结构清晰,设置一个函数prime(x) 用来判断x是否为素数。
一要c语言做出来的啊!谢谢好心人了
一定要简单一点的,这也太复杂了点吧!
这有一个请各位高手多多指教
#include<stdio.h>
int i,m,n;
int prime(int x)
{
int i=1;
if(x==1)
return 0;
for(i=2;i*i<=x;i++)
if(x%i==0)
return 0;
return 1;
}
void main()
{
printf("\nPLEASE ENTER m AND n:\n");
scanf("%d,%d",&m,&n);
for(i=m;i<=n;i++)
if(prime(i))
printf(" %d",i);
}

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void prime(int b,int a)
{
int i,m,k,n=0;
printf("%d到%d中的所有素数为:\n",b,a);
for(m=2;m<=a;m++)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)//判断m是否为素数
{
break;
}
if(i>k)
{
printf("%d ",m);
n=n+1;
if(n%10==0)//每输出10个数换一次行
{
printf("\n");
}
}
}
printf("\n");
}
main()
{
int m,n,i=1;
printf("请输入m的值:");
scanf("%d",&m);
printf("请输入n的值:"); ");
scanf("%d",&n);
if(n>m)
{
i=1;
}
else
{
printf("对不起,您输入m的值大于n的值¡\n");
i=0;
}
while(i)
{
prime(m,n);
i=0;
}
system("pause");
}

#include<stdio.h>
#include<stdlib.h>
int i,m,n;
int prime(int x)
{
int i=1;
if(x==1)
return 0;
for(i=2;i*i<=x;i++)
if(x%i==0)
return 0;
return 1;
}
main()
{
printf("\nPLEASE ENTER m AND n:\n");
scanf("%d,%d",&m,&n);
for(i=m;i<=n;i++)
if(prime(i))
printf(" %d",i);
printf("\n");
system("pause");
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-12-11
# include <stdio.h>
int prime(int x)
{
int j,flag=1;
if(x==1||x==2)
flag=1;
for(j=2;j<x;j++)
{
if(x%j==0)
flag=0;
}
return (flag);
}

void main()
{
int prime(int x);
int m,n,i;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++)
{
if(prime(i))
printf("%3d,",i);
}
}本回答被提问者采纳

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网