编写程序实现素数判定,输入一个整数n(n<=1000),判断n是否为素数,若是,输出Yes,不是,输出No
时间: 2024-11-27 21:14:35 浏览: 23
要编写一个C语言程序来判断给定的整数n是否为素数,你可以使用以下算法:
1. 首先,定义一个函数`isPrime(int n)`,该函数接收一个整数n作为参数。
2. 素数定义为大于1且除了1和其本身没有其他因子的自然数。所以我们从2开始到sqrt(n)(n的平方根)遍历所有数字,检查n是否能被这些数字整除。
3. 如果n能被任何一个数字整除,则说明n不是素数,返回`NO`。
4. 如果循环结束都没有找到能整除n的数字,则n是素数,返回`YES`。
下面是这个程序的实现:
```c
#include <stdio.h>
#include <math.h>
// 判断是否为素数的函数
char isPrime(int n) {
if (n <= 1) { // 小于或等于1的数不是素数
return 'N';
}
for (int i = 2; i <= sqrt(n); i++) {
if (n % i == 0) { // 如果n能被i整除
return 'N'; // n不是素数
}
}
return 'Y'; // 如果n不能被整除,它是素数
}
int main() {
int n;
printf("Enter an integer (less than or equal to 1000): ");
scanf("%d", &n);
char result = isPrime(n);
printf("%c\n", result); // 输出结果
return 0;
}
```
阅读全文