西柚西柚 发表于 2020-10-30 23:35:29

小白小白

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

云荡清愁 发表于 2020-10-30 23:45:43

if后面的“;”去掉即可,(话说你的printf打错了)

jackz007 发表于 2020-10-30 23:50:15

本帖最后由 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-31 08:32:18

云荡清愁 发表于 2020-10-30 23:45
if后面的“;”去掉即可,(话说你的printf打错了)

谢谢提醒
页: [1]
查看完整版本: 小白小白