#include<stdio.h>
#include<math.h>
int prime_numbers(int start, int end, int is_print);
bool is_prime_numbers(int number);
int main(){
bool print = 1;
int num;
num = prime_numbers(1, 1000, print);
printf("素数的总数为:%d\n", num);
return 0;
}
int prime_numbers(int start, int end, int is_print){
int cnt = 0;
if (is_print)
printf("从%d到%d的素数有:\n", start, end);
for (int i = start; i <= end; ++i){
if (is_prime_numbers(i)){
cnt++;
if (is_print){
printf("%d\t", i);
if (cnt % 8 == 0)
printf("\n");
}
}
}
if (is_print)
printf("\n");
return cnt;
}
bool is_prime_numbers(int number){
if (number <= 1)
return false;
int tmp = sqrt((double)number) + 1;
for (int i = 2; i < tmp; ++i)
if (number%i == 0)
return false;
return true;
}
温馨提示:答案为网友推荐,仅供参考