输出 100 到 200 以内的所有素数,使用c语言
时间: 2023-09-03 11:08:57 浏览: 101
以下是使用 C 语言编写的输出 100 到 之间的所有素数的程序:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPrime(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 start = 100;
int end = 200;
printf("100到200之间的素数有:\n");
for (int num = start; num <= end; num++) {
if (isPrime(num)) {
printf("%d ", num);
}
}
printf("\n");
return 0;
}
```
该程序中,使用了 `isPrime` 函数来判断一个数是否为素数。在主函数中,遍历从 100 到 200 的范围,对于每个数,调用 `isPrime` 函数来判断是否为素数,如果是素数,则输出该数。最后输出结果为 100 到 200 之间的所有素数。
相关问题
使用for循环语句输出200以内所有素数的c语言程序
以下是使用 for 循环语句输出200以内所有素数的C语言程序:
```c
#include <stdio.h>
int main() {
int i, j, flag;
for (i = 2; i <= 200; i++) {
flag = 1; // 假设 i 是素数
for (j = 2; j <= i / 2; j++) {
if (i % j == 0) {
flag = 0; // i 不是素数
break;
}
}
if (flag == 1) {
printf("%d ", i);
}
}
return 0;
}
```
程序思路:
1. 从2开始循环到200,判断每个数是否为素数。
2. 假设当前数i为素数,将flag变量赋值为1。
3. 内层循环从2开始到i/2,判断i是否能被2到i/2之间的任何一个数整除。
4. 如果i能被整除,则说明i不是素数,将flag变量赋值为0,并且跳出内层循环。
5. 如果i是素数,flag的值为1,输出i。
6. 循环结束,程序结束执行。
输出 100 到 200 以内的所有素数,使用c语言,不使用isPrime 函数
以下是使用 C 语言编写的输出 100 到 200 之间的所有素数的程序,不使用自定义的 isPrime 函数:
```c
#include <stdio.h>
#include <stdbool.h>
int main() {
int start = 100;
int end = 200;
printf("100到200之间的素数有:\n");
for (int num = start; num <= end; num++) {
bool isPrime = true;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
printf("%d ", num);
}
}
printf("\n");
return 0;
}
```
该程序中,使用了两个嵌套的循环来判断一个数是否为素数。外层循环遍历从 100 到 200 的范围,内层循环从 2 开始逐个判断除数是否能整除该数。如果找到一个能整除的除数,则将 isPrime 设置为 false,并跳出内层循环,继续下一个数的判断。如果内层循环结束时 isPrime 仍然为 true,则说明该数是素数,将其输出。最后输出结果为 100 到 200 之间的所有素数。
阅读全文