求1到n完美素数,使用C语言
时间: 2024-03-24 18:40:06 浏览: 22
很抱歉,我之前的回答有误,完美素数是不存在的,因为完美数和素数是两个不同的概念。下面是求1到n之间的完美数和素数的C语言实现:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num < 2) {
return false;
}
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int get_sum_of_divisors(int num) {
int sum = 0;
for (int i = 1; i < num; i++) {
if (num % i == 0) {
sum += i;
}
}
return sum;
}
void get_perfect_numbers(int n) {
printf("完美数:");
for (int num = 1; num <= n; num++) {
int sum_of_divisors = get_sum_of_divisors(num);
if (sum_of_divisors == num) {
printf("%d ", num);
}
}
printf("\n");
}
void get_prime_numbers(int n) {
printf("素数:");
for (int num = 1; num <= n; num++) {
if (is_prime(num)) {
printf("%d ", num);
}
}
printf("\n");
}
int main() {
int n = 100;
get_perfect_numbers(n);
get_prime_numbers(n);
return 0;
}
```
其中,is_prime函数判断一个数是否是素数,get_sum_of_divisors函数获取一个数的因子和,get_perfect_numbers函数获取1到n之间的完美数,get_prime_numbers函数获取1到n之间的素数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)