100到200之间的素数输出C语言
时间: 2024-06-14 09:03:50 浏览: 164
C语言求100到200之间的素数
以下是两种C语言输出100到200之间的素数的代码:
1. 使用两层循环判断素数:
```c
#include <stdio.h>
int main() {
int i = 0;
int count = 0;
// 外层循环用来获取100~200之间的所有数据,100肯定不是素数,因此i从101开始
for(i=101; i<=200; i++) {
//判断i是否为素数:用[2, i)之间的每个数据去被i除,只要有一个可以被整除,则不是素数
int j = 0;
for(j=2; j<i; j++) {
if(i%j == 0) {
break;
}
}
// 上述循环结束之后,如果j和i相等,说明[2, i)之间的所有数据都不能被i整除,则i为素数
if(j==i) {
count++;//记录质数的个数
printf("%d ", i);
}
}
printf("\ncount = %d\n", count);
return 0;
}
```
2. 优化后的素数判断代码:
```c
#include <stdio.h>
int main() {
int i = 0;
//初始值设为101,每次+=2,因为偶数一定不是素数
for (i = 101; i < 200; i += 2) {
int j = 0;
//大于i/2的数一定不能被i整除
for (j = 2; j <= i / 2; j++) {
if (i % j == 0) {
break;
}
}
// 上述循环结束之后,如果j>(i/2),说明[2, i/2)之间的所有数据都不能被i整除,则i为素数
if (j > i / 2) {
printf("%d ", i);
}
}
return 0;
}
```
阅读全文