新人第一篇!!!!!!!!(乱七八糟的素数筛)

来源:互联网 发布:折半查找递归算法 编辑:程序博客网 时间:2024/05/22 06:11
#include<bits/stdc++.h> using namespace std;#define maxn 10000int p[maxn];int prim[maxn];int main(){memset(p,0,sizeof(p));        //p数组归零 int n=1,i,j;prim[0]=1;for(i=2;i<maxn;i++){if(!p[i]){prim[n++] = i;}if(i)for(j=2;i*j<maxn;j++)p[i*j] = 1;}for(i=0;i<n-1;i++)printf("%04d ",prim[i]);return 0;}

第一次写csdn的博客,没什么经验,求看官包涵.内容呢,是新手acmer'的噩梦(起码对我来说是这样的,可能是我比较菜 - -!)第一行是一个比较特殊的头文件#include<bits/stdc++.h>,听各路大佬说这个头文件海纳百川(吊的不行)(http://blog.csdn.net/u013446688/article/details/39033507)里面包括各种各样的头文件里的函数,比如什么:#include<stdio.h>#include<string.h>#include<algorithm>.....对新人超级友好有木有!

btw,这也是我第一次用.

#define xxx  xxx是定义一个常量,比如在本代码中就是定义 常量 maxn 为10000,别问我为什么是maxn,大佬们都是这么写的.接下来定义俩个 整形  数组进入主函数,memset函数是用来将一个数组全部变为一个数,但一般都是归零,变成其他数字容易出问题.然后就是素数筛的代码实现,可以自己试着理解,不是很难.红色字体是一些比较精简的写法,建议掌握.最后就是输出了.

The end.喜欢你就点个关注嘛 


原创粉丝点击