输入一个正整数n,如果它是素数,输出"YES",否则,输出"NO"

输入一个正整数n,如果它是素数,输出"YES",否则,输出"NO" (素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。 要求定义并调用函数prime(m)判断m是否为素数。

#include <stdio.h>
#include <math.h>

int isPrime(long n) {
  if (n==2||n==3) return 1;
  if (n%2==0) return 0;
  for (int i=3;i<=sqrt(n);i+=2) {
    if (n%i==0) return 0;
  }
  return 1;
}

main() {
  int n;
  printf("输入n:");
  scanf("%d", &n);
  if (isPrime(n))
    printf("YES\n");
  else
    printf("NO\n");
}

追问

整题

追答

整题什么意思?

----------

哦,把isPrime,改成prime就行了。

#include <stdio.h>
#include <math.h>
int prime(long m) {
  if (m<2) return 0;
  if (m==2||m==3) return 1;
  if (m%2==0) return 0;
  for (int i=3;i<=sqrt(m);i+=2) {
    if (n%i==0) return 0;
  }
  return 1;
}
main() {
  int n;
  printf("输入n:");
  scanf("%d", &n);
  if (prime(n))
    printf("YES\n");
  else
    printf("NO\n");
}

温馨提示:答案为网友推荐,仅供参考
相似回答