精华内容
下载资源
问答
  • /*用筛选法求100之内的素数*/ #include <stdio.h> int main() { int i,j,flag = 0; for(i = 2;i <= 100;i ++) { for(j = 2;j < i;j++) { flag = 0; if(i % j == 0) { flag = 1...
    /*用筛选法求100之内的素数*/
    
    #include <stdio.h>
    
    int main()
    {
    	int i,j,flag = 0;
    	
    	for(i = 2;i <= 100;i ++)
    	{
    		for(j = 2;j < i;j++)
    		{ 
    		    flag = 0;
    			if(i % j == 0)
    			{
    				flag = 1;
    				break;
    			}
    
    		}
    	    if(flag == 0)
    	    printf("%d\n",i);
    	}
     } 
    

    谭浩强C程序设计(第四版)p168第1题
    啊!我太菜了
    复习:
    1.break跳出单层循环

    展开全文
  • 用筛选法求100之内的素数 首先我们来看一下什么是素数: 素数又称质数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除; 介绍一下筛选法: 筛选法所谓"筛选法”指的是“埃拉托色尼(Eratosthenes)筛法”...

    用筛选法求100之内的素数

    首先我们来看一下什么是素数:
    素数又称质数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除;

    介绍一下筛选法:
    筛选法所谓"筛选法”指的是“埃拉托色尼(Eratosthenes)筛法”。埃拉托色尼是古希腊的著名数学家。他采取的方法是:在一张纸上写上1~1000的全部整数,然后逐个判断它们是否素数,找出一个非素数,就把它挖掉,最后剩下的就是素数。

    #include <stdio.h> 
    #include <math.h>
    int main(){
    	int a[101];//定义一个数组 
    	for(int i=1;i<=100;i++){//为数组元素赋初值 a[0]不用 数组从a[1] 开始 
    		a[i]=i;
    	}
    	a[1]=0;   //先将a[1]赋0值 ,“挖去” 
    	for(int i=2;i<10;i++){// 设置对2---10循环 
    		for(int j=i+1;j<=100;j++){// 设置对i+1---100的循环 
    			if(a[i]!=0&&a[j]!=0){//判断数组中那些是没被“挖去” 的元素 
    				if(a[j]%a[i]==0) {//对数组元素进行 除余运算,判断是否满足素数要求 
    					a[j]=0;       //“挖去” 非素数 
    				}
    			} 
    		}
    	}
    	int count=0;//定义计数
    	for(int i=1;i<=100;i++){//对数组进行遍历 
    		
    		if(a[i]!=0){//找出未被“挖去”的元素,即素数 
    			printf("%d ",a[i]);//输出 素数
    			count++;//计数加1 
    			if(count%5==0){//一行输出五个元素后自动换行 
    				printf("\n");
    			}
    		}
    		
    	}
    }
    
    

    不懂请留言,谢谢

    展开全文
  • 用筛选法求100之内的素数 #include <stdio.h> #include <math.h> void main(){ int i,j,n,a[101]; for(int i=1;i<=100;i++){ a[i]=i; } a[1]=0; for(i=2;i<sqrt(100);i++){ for(j=i+1;j<...

    用筛选法求100之内的素数

    #include <stdio.h>
    #include <math.h>
    void main(){
        int i,j,n,a[101];
        for(int i=1;i<=100;i++){
            a[i]=i;
        }
        a[1]=0;
        for(i=2;i<sqrt(100);i++){
            for(j=i+1;j<=100;j++){
                if(a[i]!=0&&a[j]!=0){
                    if(a[j]%a[i]==0){
                        a[j]=0;
                    }
                }
            }
        }
        printf("\n");
        for(i=2,n=0;i<=100;i++){
            if(a[i]!=0){
                printf("%5d",a[i]);
                n++;
            }
            if(n==10){
                printf("\n");
                n=0;
            }
        }
        printf("\n");
    }
    

    不懂请留言,谢谢!

    展开全文
  • //用筛选法求100之内的素数 //把不是素数的数替换为0 #include <stdio.h> int main(){ int i,j,k=0,a[100]; for(i=0;i<100;i++){ a[i]=i+1;//把1-100赋值给a[0]-a[99] } //由于1不是素数,将其设置...
    //用筛选法求100之内的素数
    
    //把不是素数的数替换为0
    #include <stdio.h>
    int main(){
    	int i,j,k=0,a[100];
    	for(i=0;i<100;i++){
    		a[i]=i+1;//把1-100赋值给a[0]-a[99]
    	}
    	//由于1不是素数,将其设置为0
    	a[0]=0;
    	for(i=1;i<99;i++){
    		for(j=i+1;j<100;j++){
    			if(a[i]!=0&&a[j]!=0){
    					if(a[j]%a[i]==0){
    					a[j]=0;
    				}
    			}
    			
    		}
    	}
    	//输出不为0的数即为素数
    	for(i=0;i<100;i++){
    		if(a[i]!=0){
    			printf("%d\t",a[i]);
    			k++;
    		}
    		if(k%10==0){
    			printf("\n");
    		}
    	}
    
    	return 0;
    }
    
    展开全文
  • 习题 5.1 用筛选法求100之内的素数

    千次阅读 2018-07-29 19:09:41
    习题 5.1 用筛选法求100之内的素数。 代码块: #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { int n[100], i, j, c=0; for (i=0; i&lt;100; n...
  • 6习题1 用筛选法求100之内的素数 代码 #include &lt;stdio.h&gt; int main() { int a[101], i, j; for (i = 1; i &lt;= 100; i++) a[i] = i; for (i = 2; i &lt;= 100; i++) { for (j = i + 1...
  • 习题 6.1 用筛选法求100之内的素数

    千次阅读 2017-08-14 19:22:31
    C程序设计 (第四版) 谭浩强 习题 6.1 个人设计习题 6.1 用筛选法求100之内的素数。代码块#include <stdio.h>main() { int a[101], i, j; for (i = 1; i <= 100; i++) a[i] = i; a[1] = 0; //把数字1剔除
  • 用筛选法求100之内的素数(C语言 数组)

    万次阅读 多人点赞 2018-05-21 11:28:28
    1.解释下什么是筛选法? 筛选法又称筛法,具体做法是:先把N个自然数按次序排列起来。1不是质数,也不是合数,要划去。第二个数2是质数留下来,而把2后面所有能被2整除数都划去。2后面第一个没划去数是3,把3...
  • //*题目:用筛选法求100之内的素数。 #include<stdio.h> #include<math.h> int main() { int i,j,a[101]; for(i=1;i<101;i++) a[i]=i; a[1]=0; for(i=2;i<sqrt(101);i++) { for(j=i+1;...
  • //用筛选法求100内的素数,质数别名素数,指除了1和本身外无其他因数的自然数 #include<stdio.h> #include<math.h> int main() { int i,j,n,a[101]; for(i=1;i<=100;i++) //a[0]不用 { a[i...
  • 用筛选法求100之内的素数——C语言

    千次阅读 2019-07-21 21:38:03
    筛选法其实是把我们不需要数给筛出掉! 本题具体做法如下: 先把N个自然数按次序排列起来,本题中直接采用数据即可; 1不是素数(质数),也不是合数,筛去; 第二个数2是素数,保留下来,把2后面所有能被2整除...
  • #include<stdio.h>... int a[100],i,j,k=0; for(i=0;i<100;i++) a[i]=i+1; for(i=1;i<100;i++) { for(j=i+1;j<100;j++) if(a[i]!=0&&a[j]!=0) { if(a[j]%a[i]==0) ...
  • 下一个没有被挖掉数p去除p后面各数,把p倍数挖掉 检查p是否小于 sqrt( n )整数部分(n = 1000,则检查p < 31是否成立),如果成立,则返回 第二步 继续执行。否则结束。 剩下数就是素数,输出即可。 ...
  • int a[100],i,j; for(i=0;i<100;i++) a[i]=i+1; a[0]=0; for(i=1;i<99;i++) { for(j=i+1;j<100;j++) { if(a[i]!=0 && a[j] !=0) { if(a[j]%a[i]==0) a[j]=0; } } } ...
  • 什么是筛选法筛选法又称筛法,具体做法是:先把N个自然数按次序排列起来。1不是质数,也不是合数,要划去。第二个数2是质数留下来,而把2后面所有能被2整除数都划去。2后面第一个没划去数是3,把3留下,再把...
  • int n=0,a[100],b[100]; for (int i = 0; i < 100; i++) {a[i]=i+1; } for (int i = 1; i < 100; i++) { for (int j = 2; j < i; j++) { if (i%j==0) { break; } if(j==i-1) {b[n]=i; ...
  • 素数】:又称质数,有无限个,质数定义为在大于1自然数中除了1和它本身以外不在有其他因数数。源码参考(有注释详解):#include &lt;stdio.h&gt;int main(){ int i,j,n,a[101]; //初始化操作,给...

空空如也

空空如也

1 2 3 4
收藏数 77
精华内容 30
关键字:

用筛选法求100之内的素数