输出 1000 之内的所有素数 c语言
时间: 2023-09-13 17:05:42 浏览: 49
好的,以下是输出1000以内的所有素数的C语言代码:
```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() {
for (int i = 2; i <= 1000; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
return 0;
}
```
首先定义了一个 `is_prime` 函数,用于判断一个数是否为素数。该函数接受一个整数参数 `num`,如果 `num` 是素数,则返回1,否则返回0。在该函数中,如果 `num` 小于等于1,则直接返回0;如果 `num` 能被2到 `sqrt(num)` 中的任何一个整数整除,则返回0,否则返回1。
然后,在 `main` 函数中,我们从2开始依次枚举每个整数,如果这个整数是素数,则输出它。最后返回0表示程序正常结束。
相关问题
输出 1000 之内的所有素数 C语言
好的,以下是输出1000以内的所有素数的C语言代码:
```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() {
for (int i = 2; i <= 1000; i++) {
if (is_prime(i)) {
printf("%d ", i);
}
}
return 0;
}
```
首先定义了一个 `is_prime` 函数,用于判断一个数是否为素数。该函数接受一个整数参数 `num`,如果 `num` 是素数,则返回1,否则返回0。在该函数中,如果 `num` 小于等于1,则直接返回0;如果 `num` 能被2到 `sqrt(num)` 中的任何一个整数整除,则返回0,否则返回1。
然后,在 `main` 函数中,我们从2开始依次枚举每个整数,如果这个整数是素数,则输出它。最后返回0表示程序正常结束。
C语言输出100之内所有素数,每行仅输出5个素数
C语言中输出100以内所有素数,可以采用循环和条件判断的方式来实现。这里是一个简单的程序示例:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return false;
}
return true;
}
void print_primes(int limit, int count) {
int counter = 0;
for (int i = 2; i <= limit; i++) {
if (is_prime(i)) {
printf("%d ", i);
counter++;
if (counter % count == 0) {
printf("\n"); // 每打印完count个素数换行
}
}
}
}
int main() {
print_primes(100, 5); // 输出100以内的素数,每行5个
return 0;
}
```
这个程序首先定义了一个`is_prime`函数来检查是否是素数,然后通过`print_primes`函数遍历1到100之间的数字,如果找到素数就输出,并保持计数器`counter`,当计数达到5时换行。
阅读全文