zoukankan      html  css  js  c++  java
  • 求素数

    质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数。
    最小的素数是2, 它也是唯一的偶素数。
    比1大但不是素数的数称为合数。
    1和0既非素数也非合数。
    c prime plus 第七章 7.5程序(这个程序吧1判断为素数,但是1不是哦)
     1 // divisors.c -- nested ifs display divisors of a number 
     2 #include <stdio.h>
     3 #include <stdbool.h>
     4 int main(void)
     5 {
     6     unsigned long num;          // number to be checked 
     7     unsigned long div;          // potential divisors   
     8     bool isPrime;               // prime flag
     9 
    10     printf("Please enter an integer for analysis; ");
    11     printf("Enter q to quit.
    ");
    12     while (scanf("%lu", &num) == 1)
    13     {
    14         for (div = 2, isPrime= true; (div * div) <= num; div++)
    15         {
    16             if (num % div == 0)
    17             {
    18                 if ((div * div) != num)
    19                 printf("%lu is divisible by %lu and %lu.
    ",
    20                         num, div, num / div);
    21                 else
    22                     printf("%lu is divisible by %lu.
    ",
    23                            num, div);
    24                 isPrime= false; // number is not prime  
    25             }
    26         }
    27         if (isPrime)
    28             printf("%lu is prime.
    ", num);
    29         printf("Please enter another integer for analysis; ");
    30         printf("Enter q to quit.
    ");
    31     }
    32     printf("Bye.
    ");
    33    
    34     return 0;
    35 }

    OK,下面这个修改一下,不就是列举XX范围内的 素数了么·

     1 #include <stdio.h>
     2 #include <stdbool.h>
     3 int main(void)
     4 {
     5     unsigned long num;          // number to be checked 
     6     unsigned long div;          // potential divisors   
     7     bool isPrime;               // prime flag
     8 
     9     printf("Analysis all the prime till 20:
     ");
    10     
    11     for(num = 2;num<20;num++)
    12     {
    13         for (div = 2, isPrime= true; (div * div) <= num; div++)
    14         {
    15             if (num % div == 0)
    16             {
    17             
    18                 isPrime= false; // number is not prime  
    19             }
    20         }
    21         if (isPrime) printf("%lu is prime
    ", num);
    22         
    23     }
    24     printf("Bye.
    ");
    25    
    26     return 0;
    27 }
     
  • 相关阅读:
    C#:如何设置MDI窗体
    asp.net在类库中使用EF 6.0时的相关配置
    asp.net中使用jquery ajax保存富文本的问题
    Asp.net Api中使用OAuth2.0实现“客户端验证”
    NLog在asp.net中的使用
    元素的隐藏特性
    jQuery 使用笔记
    获取标签的所有选择器存放在一个数组
    自己绘制的flex布局思维导图
    js打印三角形
  • 原文地址:https://www.cnblogs.com/kalo1111/p/3268653.html
Copyright © 2011-2022 走看看