#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) 回复
??
回复评论