c语言程序:编写函数,判断一个正整数是否为素数,并输出100以内的素数。我的程序错在哪里?

2024-11-01 10:05:51
推荐回答(2个)
回答(1):

void prime(int x)
{
int i;
for(i=2;i<=x/2;i++)
{
if(x%i==0)
break;
if(i>x/2)
printf("%d ",x);
}
}
改为
void prime(int x)
{
int i;
for(i=2;i<=x/2;i++)
if(x%i==0)
return ;
printf("%d ",x);
}

回答(2):

#include
void prime(int x)
{
  int i;
  for(i=2;i<=x/2;i++)
  {
    if(x%i==0)
      break;
    //if(i>x/2)
      //printf("%d ",x);
  }
  if(i>x/2)
      printf("%d ",x);
}
int main()
{
  int num;
  for(num=2;num<=100;num++)
    prime(num);
  return 0;
}