zoukankan      html  css  js  c++  java
  • C 筛选法找素数

    #include <stdio.h>
    #include <stdlib.h>
    
    void waqu(int num[], int wa);
    int main() {
        int num[100];
        int i = 0;
        for (i = 0; i < 100; i++) {
            num[i] = i + 1;
        } //初始化
    
        //挖掉1
        num[0] = 0;
        int wa = 2;
    
        for (wa = 2; wa <= 10; wa++) {
            int j = 2;
            int isWa = 1; //挖去因子
    
            //来确定这个数字是不是挖去因子
            for (j = 2; j <= wa; j++) {
                //这里是在确定因子  比如4的倍数是不用考虑在挖去的
                //因为4是2的倍数  在挖2的倍数的时候 其实已经把4的倍数挖走了
                //为什么要加上 wa!=j 呢?
                //wa=2时 wa%j==0 但是2的倍数还没开始挖呢!
                if (wa % j == 0 && wa != j) {
                    isWa = 0;
                }
            }
            if (isWa) {
                //执行挖去操作
                printf("%d,", wa);
                waqu(num, wa);
            }
        }
    
        for (i = 0; i < 100; i++) {
            if (num[i] == 0) {
    
            } else {
                printf("%3d,", num[i]);
    
            }
        }
    
        return 1;
    }
    
    void waqu(int num[], int wa) {
        int i = wa;
        for (i = 0; i < 100; i++) {
            if (num[i] == 0) {
    
            } else if (num[i] % wa == 0 && num[i] != wa) {        //如果是2的倍数//不包括2本身
                num[i] = 0;
            }
        }
    }
  • 相关阅读:
    shell 冒泡算法 解决数组排序问题
    react(二)
    react(一)
    mybatis-plus:3
    lambda
    配置中心(nacos)-控制台使用
    nacos作为配置中心的简单项目配置
    nacos作为注册中心的简单项目配置
    Vue初步学习
    nacos单例模式简单搭建
  • 原文地址:https://www.cnblogs.com/cart55free99/p/2973815.html
Copyright © 2011-2022 走看看