
题目

解决代码及点评
/*
功能:打印出3到1100之间的全部素数(判素数由函数实现
*/
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int judgPri(int); //判断参数是否为素数,是返回1,否返回0
void main()
{
for (int i = 3; i < 1100; i++){ //遍历3---1100
int flag = judgPri(i); // 判断是否素数
if (flag == 1)
printf("%-6d\n",i); // 如果是素数则打印
}
system("pause");
}
int judgPri(int n){
int flag = 1;
if (n == 2 || n == 3){
return 1;
}
else{
for (int i = 2; i <= (int)sqrt((double)n); i++){
if (n%i == 0){
return 0; //如果因数跳出循环,返回0
}
}
}