#include<stdio.h> |
int main( void ) |
{ |
int limit,x=3,i=3,count=1; //count为1是因为有一个素数是偶数,即2 |
printf ( "请输入待求素数的上限:\n" ); |
scanf ( "%d" ,&limit); |
printf ( "2 " ); //单独打印2 |
for (;x<limit;x+=2) //为了提高速度,我们从3开始,每次加2,遍历要求范围的所有奇数 |
{ |
i=3; |
for (;x%i!=0&&i*i<=x;i+=2); //如果其约数能增长到根号下还大,说明其是素数 |
if (i*i>x) |
{ |
printf ( "%d " ,x); //中间用空格隔开 |
count++; |
} |
} |
printf ( "\n有%d个素数!" ,count); |
return 0; |
} |
by: 发表于:2017-08-14 11:30:00 顶(0) | 踩(0) 回复
??
回复评论