题解 | #筛选法求素数#

筛选法求素数

http://www.nowcoder.com/practice/06c3dcc303654ef4926654023eca1e5a

用了c和python各写了一版,因为对python还是小白阶段,所以中间改了很久才出来 c:

#include<stdio.h>
int issushu(int n){
    int i;
    for(i=2;i<n;i++){
        if(n%i==0){
            return -1;
        }
    }
    return 1;
}
int main(){
    int n,k,count=0;
    while(scanf("%d",&n)!=EOF){
        for(k=2;k<=n;k++){
            if(issushu(k)==1){
                printf("%d ",k);
                count++;
            }
        }
        printf("\n");
        printf("%d",n-count-1);
    }
    return 0;
}

python:

import math
def sushu(k):
    for i in range(2,k):
        if k%i==0:
             return False
    return True
while True:
    try:
        count=0
        n=int(input())
        for k in range(2,n+1):
            if sushu(k):
                print(k,end='')
                print(' ',end='')
                count+=1
        print()
        print(n-count-1)
    except:
        break
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 10:39
一个证都没&nbsp;我能填什么
程序员小白条:别人有,你为什么没有,还是这个道理,社会就是比较,竞争,淘汰,你要安逸,那么就要做好淘汰的准备
点赞 评论 收藏
分享
06-26 22:20
门头沟学院 Java
码农索隆:让你把简历发给她,她说一些套话,然后让你加一个人,说这个人给你改简历,然后开始卖课
我的求职精神状态
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务