用c语言判断一个给定的正整数是否素数。 输入格式: 输入在第一行给出一个正整数N(≤ 10),随后N行,每行给出一个小于2 31 的需要判断的正整数。 输出格式: 对每个需要判断的正整数,如果它是素数,则在一行中输出Yes,否则输出No。
时间: 2024-11-06 07:16:13 浏览: 5
输入一个正整数,判断是不是素数(C++)
在C语言中,我们可以编写一个函数来判断一个正整数是否是素数。下面是一个简单的算法:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1) { // 1不是素数,0也不是
return false;
}
for (int i = 2; i * i <= num; i++) { // 只需检查到其平方根即可
if (num % i == 0) { // 如果能被整除,说明不是素数
return false;
}
}
return true; // 如果没找到因子,那么就是素数
}
int main() {
int N;
scanf("%d", &N);
for (int i = 0; i < N; i++) {
int num;
scanf("%d", &num);
if (is_prime(num)) {
printf("Yes\n");
} else {
printf("No\n");
}
}
return 0;
}
```
这个程序首先读取用户输入的正整数N,然后对于每一个数字num,调用`is_prime()`函数判断它是否为素数。如果是素数则输出"Yes",否则输出"No"。
阅读全文