用c语言输出100~200的素数
时间: 2024-12-14 08:26:55 浏览: 7
在 C 语言中,要输出100到200之间的素数,首先我们需要了解什么是素数。素数是指大于1的自然数,除了1和它本身以外不再有其他因数。下面是一个简单的程序示例,用于找出并打印这个范围内的所有素数:
```c
#include <stdio.h>
// 判断是否为素数的辅助函数
int is_prime(int num) {
if (num <= 1) return 0;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return 0; // 如果能被整除,则不是素数
}
return 1; // 否则,它是素数
}
int main() {
int start = 100;
int end = 200;
printf("素数列表 (100 ~ 200):\n");
for (int i = start; i <= end; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
return 0;
}
```
这个程序首先定义了一个辅助函数 `is_prime` 来检查一个数是否是素数。然后在主循环中,从100开始逐个检查每个数,如果是素数就打印出来。
相关问题
C语言求100~200以内的所有素数
以下是使用C语言求100~200以内的所有素数的代码:
```c
#include <stdio.h>
int main() {
int i, j, is_prime;
for (i = 100; i <= 200; i++) {
is_prime = 1; // 假设i是素数
for (j = 2; j < i; j++) {
if (i % j == 0) { // 如果i可以被j整除,则i不是素数
is_prime = 0;
break;
}
}
if (is_prime) {
printf("%d ", i); // 输出素数i
}
}
return 0;
}
```
代码的思路是从100到200枚举每个数i,然后判断i是否为素数。判断i是否为素数的方法是从2到i-1枚举每个数j,如果i能够被j整除,则i不是素数。如果i不能被2到i-1中的任何一个数整除,则i是素数,将其输出即可。
c语言输出100~200之间的全部素数。
以下是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;
}
```
阅读全文