ICode9

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

筛法求素数

2019-02-24 20:52:38  阅读:148  来源: 互联网

标签:筛法 int long char 素数 1000


#include<stdio.h> //筛法求素数 
char a[100000000];//用 int 也可以  只是char 节省空间 
int main()
{
	long long  n;
	scanf("%lld",&n);
	int count=0;
	for(int i=2;i<=n;i++)	a[i]=1; //将所有数标记 
	for(int i=2;i<=n;i++)
	{
		if(a[i])  //标记 1 的为素数 
		{
			count++;
			printf("%3d ",i);  
			if(count%8==0)  //格式化输出 
			printf("\n");
			for(int j=2*i;j<=n;j+=i)	//底标i的倍数都不可能为素数  将其标记为0 
			{
				a[j]=0;
			}
		}
	}
	
	return 0; 
	
	
}

以下为输出结果  并对照百度1-1000的素数 

 

1000
  2   3   5   7  11  13  17  19
 23  29  31  37  41  43  47  53
 59  61  67  71  73  79  83  89
 97 101 103 107 109 113 127 131
137 139 149 151 157 163 167 173
179 181 191 193 197 199 211 223
227 229 233 239 241 251 257 263
269 271 277 281 283 293 307 311
313 317 331 337 347 349 353 359
367 373 379 383 389 397 401 409
419 421 431 433 439 443 449 457
461 463 467 479 487 491 499 503
509 521 523 541 547 557 563 569
571 577 587 593 599 601 607 613
617 619 631 641 643 647 653 659
661 673 677 683 691 701 709 719
727 733 739 743 751 757 761 769
773 787 797 809 811 821 823 827
829 839 853 857 859 863 877 881
883 887 907 911 919 929 937 941
947 953 967 971 977 983 991 997

--------------------------------
Process exited after 2.615 seconds with return value 0
请按任意键继续. . .

 

 

标签:筛法,int,long,char,素数,1000
来源: https://blog.csdn.net/qq_42612338/article/details/87907433

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

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

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

ICode9版权所有