求1000以内的所有质数C语言
时间: 2023-08-24 21:29:11 浏览: 160
以下是求1000以内的所有质数的C语言代码:
```c
#include <stdio.h>
int main() {
int i, j, flag;
for(i=2; i<=1000; i++) {
flag = 0;
for(j=2; j<=i/2; j++) {
if(i%j == 0) {
flag = 1;
break;
}
}
if(flag == 0) {
printf("%d ", i);
}
}
return 0;
}
```
解释一下代码:首先从2开始遍历到1000,对于每个数字i,内层循环从2到i/2遍历,判断i是否能够被整除,如果能够被整除则说明i不是质数,标记flag为1,跳出内层循环。如果内层循环结束后flag还是0,说明i是质数,打印输出即可。
相关问题
求200以内的素数c语言
在 C 语言中,求解 200 以内的素数可以采用循环遍历的方式,并通过一个判断条件来确定每个数字是否为素数。以下是一个简单的程序示例:
```c
#include <stdio.h>
// 判断是否为素数的辅助函数
int is_prime(int num) {
if (num <= 1)
return 0; // 小于等于1的数不是素数
for (int i = 2; i * i <= num; i++) { // 只需要检查到 sqrt(num),大于这个数的因子必有一个小于sqrt(num)
if (num % i == 0)
return 0; // 如果能被整除,说明不是素数
}
return 1; // 否则它是素数
}
int main() {
int limit = 200;
printf("200以内的素数有:\n");
for (int i = 2; i <= limit; i++) {
if (is_prime(i))
printf("%d ", i);
}
return 0;
}
```
在这个程序中,`is_prime` 函数用于判断输入的数字是否为素数,`main` 函数通过循环遍历从2到200的所有数字,并利用 `is_prime` 函数筛选出素数。运行这段代码后,它会打印出200以内的所有素数。
输出1000以内所以素数C语言代码
以下是一个简单的 C 语言程序,用于输出 1000 以内的所有素数:
```c
#include <stdio.h>
int main() {
int i, j, flag;
// 遍历 2 到 1000
for (i = 2; i <= 1000; i++) {
flag = 1;
// 判断是否为素数
for (j = 2; j < i; j++) {
if (i % j == 0) {
flag = 0;
break;
}
}
// 输出素数
if (flag == 1) {
printf("%d ", i);
}
}
return 0;
}
```
该程序使用两个嵌套的 `for` 循环,遍历 2 到 1000 的所有数。对于每个数,内层循环判断其是否为素数,如果是素数,则输出该数。判断素数的方法是,如果该数能被 2 到该数减 1 的所有数整除,则该数为素数。
阅读全文