素数判别有什么问题吗?
#include<stdio.h>#include<stdlib.h>
void main()
{
int i,prime;
printf("请输入一个1-1000的整数\n");
scanf("%d",&prime);
if(prime<2)
{
printf("NO\n");
}
else
{
if((prime%2==0||prime%3==0)&&(prime>3)) printf("NO\n");
else printf("YES\n");
}
//system("pause");
} 1、首先在逻辑上有问题,比如25
2、i 没用 那输入35不是也会输出yes 你这个素数只是判断了能不能被2或者3整除,不符合素数的定义啊。是1和本身,就没有其他的了。
newu 发表于 2017-6-7 21:11
1、首先在逻辑上有问题,比如25
2、i 没用
{:5_91:}thanks ipedzjw 发表于 2017-6-7 21:35
那输入35不是也会输出yes
thanks{:5_91:} 感觉好像逻辑上有点问题吧
逻辑上有问题,你好好看看素数的定义吧
页:
[1]