ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

密码工程-小素数

2022-06-09 14:33:08  阅读:142  来源: 互联网

标签:工程 int 代码 len 密码 素数 测试代码 plist


  1. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务
  2. 参考《密码工程》p107伪代码基于Eratosthenes算法实现 int SmallPrimeList(int n, int *plist, int *len), 其中plist返回素数列表,len返回列表长度(10
    ’)
    2 写出测试代码,至少包括 n=2, n=你的四位学号,n>2^20次方的测试代码,提交代码和运行结果截图(5)

代码如下

//myprinum
#include <stdio.h>
#define N 2000000

int main()
{
         int plist[N+1]={0,0},t,k,len,a,b;
         for (k=2; k<=N;k++) plist[k]=1;
         k=2;
         while(k<=N)
         {
                   t=2;
                   while(t*k<=N)
                   {
                            plist[t*k]=0;
                            t++;
                   }
                   k++;
                   while(k<=N  && plist[k]==0) k++;
         }
         printf("请输入范围:");
         scanf("%d%d",&a,&b);
         len=0;
         printf("素数列表如下:\n");
         for (k=a;k<=b;k++)
         {
            if (plist[k]==1)
            {
                 len++;
                printf("%10d",k);
                 if (len%10==0)  printf("\n");
            }
         }
         printf("\n");
         printf("一共有%d个素数",len);
    printf("\n");
    return 0;
}

标签:工程,int,代码,len,密码,素数,测试代码,plist
来源: https://www.cnblogs.com/ffffatal/p/16359205.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有