求高手用c语言编程,输出[m,n]间的所有素数,并且每5个换行,如果区间内不存在素数,输出0。

判断整数是否为素数要求用独立的子函数实现。
2024-11-12 00:42:55
推荐回答(2个)
回答(1):

程序源代码:

#include

#include

void main()

{

    

  int i,k,m,n;

  int count=0;

  printf("请输入求素数的上区间m的值:");

  scanf("%d",&m);

     printf("请输入求素数的下区间n的值:");

   scanf("%d",&n);

  for(i=m;i<=n;i++)

  {

   if(i==1)

    continue;

   int flag=1;

   for(k=2;k

   {

    if(i%k==0)

    {

     flag=0;

     break;

    }

     

   }

   

   if(flag==1)

   {

    printf("%-4d",i);

   count++;

   }

  if(count%5==0)

    printf("\n");

   }

  if(count==0)

   printf("该区间存在的素数为:0\n");

}

运行结果:

回答(2):

学过数论的人应该知道,m和n的大小要有限制,因为一个很大的数判断它是否为素数从计算上是不可能