小白小白
C语言判断素数#include <stdio.h>
int main()
{
int a;
scanf("%d",a);
if(a%a==0&&a%1==0);
{
printtf("YES");
}
else
printf("NO");
return 0;
}
为什么else出错,一直不清楚什么情况下它找不到if if后面的“;”去掉即可,(话说你的printf打错了) 本帖最后由 jackz007 于 2020-10-31 00:17 编辑
楼主,你判断素数的方法太 "草率" 了!
#include <stdio.h>
prime(int a)
{
int k , ret = 0 ;
if(a > 1) {
for(k = 2 , ret = 1 ; k * k < a + 1 ; k ++) {
if(k < a && ! (a % k)) {
ret = 0 ;
break ;
}
}
}
return ret ;
}
int main()
{
int a ;
scanf("%d" , & a) ;
if(prime(a)) printf("YES\n") ;
else printf("NO\n") ;
} 云荡清愁 发表于 2020-10-30 23:45
if后面的“;”去掉即可,(话说你的printf打错了)
谢谢提醒
页:
[1]