terminal中,vim isPrime.c,在vim中输入下面的代码。
/* 判断一个正整数是否为素数(prime number) */ #include <stdio.h> #include <math.h> int main() { int number; int i; printf("输入你要判断的整数:"); scanf("%d", &number); for (i = 2; i <= (int) sqrt(number); i++) { if (number % i == 0) break; } if (i > (int) sqrt(number) && number != 1) printf("%d is prime number. ", number); else printf("%d is not prime number. ", number); return 0; }
保存退出,编译执行:
gcc isPrime.c -lm && ./a.out
提供一个备用方法:(大致思路还是一样的)
/* 判断一个正整数是否为素数 */ #include <stdio.h> #include <math.h> int main() { int number; int n = 0; printf("输入大于0的整数:"); scanf("%d", &number); for (int i = 2; i <= (int) sqrt(number); i++) { if (number % i == 0) { n++; //统计2 ~ (int) sqrt(number)中能把number整除的数的个数 } } if (n == 0 && number != 1) //如果n为零且输入的数不是1的话,那么输入的数就是素数了。 printf("%d is prime number ", number); else printf("%d is not prime number ", number); }