如何用c语言求300到500之间的素数?
展开全部
枚举法:
void main(){
int i,j,k;
for(i=301;i<500;i+=2){
k=1;for(j=3;j*j<=i;j+=2)if(i%j==0){k=0;break;}
if(k)printf("%d ",i);
}
}
扩展资料:
将问题的所有可能的答案一一列举,然后根据条件判断此答案是否合适,合适就保留,不合适就丢弃。例如:找出1到100之间的素数,需要将1到100之间的所有整数进行判断。
枚举算法因为要列举问题的所有可能的答案,所以它具备以下几个特点:
1、得到的结果肯定是正确的;
2、可能做了很多的无用功,浪费了宝贵的时间,效率低下。
3、通常会涉及到求极值(如最大,最小,最重等)。
4、数据量大的话,可能会造成时间崩溃。
参考资料来源:百度百科-枚举法
展开全部
穷举法:
void main(){
int i,j,k;
for(i=301;i<500;i+=2){
k=1;for(j=3;j*j<=i;j+=2)if(i%j==0){k=0;break;}
if(k)printf("%d ",i);
}
}
void main(){
int i,j,k;
for(i=301;i<500;i+=2){
k=1;for(j=3;j*j<=i;j+=2)if(i%j==0){k=0;break;}
if(k)printf("%d ",i);
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个都忘了 又不在学校,恩 给你推荐个网站吧 pudn程序管理员
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询