请用c语言编写以下问题。输入在第一行给出一个正整数N(≤10),随后N行,每行给出一个小于2^31的需要判断的正整数。输出为,对每个需要判断的正整数,如果它是素数,则在一行中输出Yes,否则输出No。
时间: 2024-11-03 21:23:29 浏览: 21
以下是使用 C 语言编写的程序,用于判断给定的正整数是否为素数:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1) {
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); // 输入的正整数 N
for (int i = 0; i < N; i++) {
int input_num;
scanf("%d", &input_num);
if (is_prime(input_num)) {
printf("Yes\n");
} else {
printf("No\n");
}
}
return 0;
}
```
这个程序首先定义了一个 `is_prime` 函数,它检查一个数是否为素数。接着,在 `main` 函数中,读取用户输入的 N 和每个需要判断的正整数,然后调用 `is_prime` 函数来验证它们,并根据结果打印 Yes 或 No。
阅读全文