Description
对于大于1的自然数,如果n为素数,那么所有大于1且不大于n的平方根的自然数都不能整除n,反之亦然。所以我们可以通过测试来确定n是否为素数。现在给出n,要你求是否为素数,是输出Yes,否则输出No
每行一个正整数n,n<=2^32-1,如果n为0,则输入结束。判断n是否为素数
每行输出一个用例的结果,如果是输出"Yes",否则输出“No”
Sample Input
2
3
4
5
6
0
Sample Output
Yes
Yes
No
Yes
No
#include<stdio.h>
#include<math.h>
int main()
{
int i,n;
int a = 0;
while(scanf("%d",&n));
{
if(n==0)
{
return 0;
}
else
{
for(i=1;i<=sqrt(n);i++)
{
if(n%i==0)
{
a+=1;
}
}
if(a==1)
{
printf("Yes\n");
}
else
{
printf("No\n");
}
}
}
return 0;
}
我的是这样,哪里不对?