为什么这个程序检查素数不起作用?

时间:2015-02-06 18:38:02

标签: c

我刚刚开始编程。我写了一个简单的C程序来检查素数,但它不起作用。请帮我找出错误。

#include<stdio.h>
void main()
{
   int n,i,c=0;
   printf("enter any number: ");
   scanf("%d", &n);
   for(i=2;i<n;i++)
   {
     if(n%i==0)
       c=c+1;
     if(c>0){
       break;
       printf("\n%d is  not   a prime number",n);
     }
   }
   if(i==n)
     printf("\n%d is a prime number",n);
}

1 个答案:

答案 0 :(得分:1)

如果您在break程序正常工作后放置printf("\n%d is not a prime number",n);。当C执行break命令时,它立即跳出最近的循环,因此它不执行循环中的下一行,即不打印它不是素数。