c语言输出100~200之间的全部素数。
时间: 2023-12-04 10:42:02 浏览: 46
以下是C语言输出100~200之间的全部素数的代码示例:
```c
#include <stdio.h>
#include <stdbool.h>
#define N 200
int main(void) {
// 标记数组,prime[i]为true表示i是素数,否则为合数
bool prime[N + 1];
for (int i = 2; i <= N; i++) {
prime[i] = true;
}
// 埃氏筛
for (int i = 2; i * i <= N; i++) {
if (prime[i]) {
for (int j = i * i; j <= N; j += i) {
prime[j] = false;
}
}
}
// 输出100~200之间的素数
for (int i = 100; i <= N; i++) {
if (prime[i]) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
相关问题
c语言 输出100~200之间的素数用流程图表示
抱歉,流程图无法直接描绘C语言的代码逻辑。但是,我可以为你提供一个用C语言编写的程序来输出100~200之间的素数。以下是C语言代码:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int num) {
if (num < 2) {
return false;
}
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
printf("Prime numbers between 100 and 200:\n");
for (int i = 100; i <= 200; i++) {
if (isPrime(i)) {
printf("%d\n", i);
}
}
return 0;
}
```
这段代码首先定义了一个函数 `isPrime`,用于判断一个数是否为素数。然后在 `main` 函数中,循环遍历100到200之间的所有数,调用 `isPrime` 函数判断是否为素数,如果是素数则输出。最后输出的结果是100~200之间的素数。
c语言将100~200之间的素数输出
以下是C语言代码,可以将100~200之间的素数输出:
```c
#include <stdio.h>
int main() {
int i, j, is_prime;
for (i = 100; i <= 200; i++) { // 从100到200遍历所有数字
is_prime = 1; // 假设当前数字是素数
for (j = 2; j < i; j++) { // 遍历2到当前数字的前一个数字
if (i % j == 0) { // 如果当前数字能被j整除,说明不是素数
is_prime = 0;
break;
}
}
if (is_prime) { // 如果当前数字是素数,输出
printf("%d ", i);
}
}
return 0;
}
```
该代码中,外层循环遍历100~200之间的所有数字,内层循环遍历2到当前数字的前一个数字,判断当前数字是否能被整除。如果能被整除,则说明不是素数,将is_prime设为0。如果内层循环结束后is_prime仍为1,则说明当前数字是素数,输出即可。