素数的概念:

素数又叫做质数(prime number),指的是在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数,否则称为合数。合数除了1和这个数本身,还能被其他正整数整除。1既不是质数也不是合数。

bool:

bool 类型关键字是 .NET System.Boolean 结构类型的别名,它表示一个布尔值,它的值可是 true 或 false

若要使用 bool 类型的值执行逻辑运算,请使用布尔逻辑运算符。 bool 类型是 比较和相等运算符的结果类型。 bool 表达式可以是 if条件语句、do-while循环语句、while循环语句和 for循环语句中以及三目条件运算符:?中的控制条件表达式。

另外,bool 类型的默认值为 false

思路

首先定义一个n用于获取用户输入的n值,然后用一个for循环一个个判断是否为素数,在这里需要立一个flag用于判断是否为素数,然后再用一个for循环大于2且小于第一个for循环的循环变量,如果i在2到i里有求余为0的数,则前面立flag为0,该数不为素数。在第二个循环后面判断前面的flag是否为真,如果为真则输出该素数,如果为假,则接着循环。

初级版:

#include "stdio.h"
int main() {int n;scanf("%d", &n);for (int i = 2; i < n; i++) {bool flag = 1;for (int j = 2; j < i; j++) {if (i % j == 0) {flag = 0;}}if (flag) {printf("%d\n", i);}}return 0;
}

进阶版:

#include "stdio.h"
int main() {
    int n;
    scanf("%d", &n);

if (n >= 2) {
        printf("2\n");
    }

for (int i = 3; i < n; i+= 2) {
        bool flag = 1;

for (int j =0 ; j< i; j += 2) {
            if (i % j == 0) {
                flag = 0;
            }
        }

if (flag) {
            printf("%d\n", i);
        }
    }

return 0;
}

本题考查了双重for循环语句,if语句以及bool值

注意事项:

1.对flag的赋值要在两个循环之间,这样才能保证每次判断这个数是不是素数时,flag的初始值都为1;

2.在进阶版中直接从3开始,每次加2,这样可以排除偶数,减少电脑的运算时间,提高运算速率,但是这样就会漏算了一个2,所以要在前面加一个判断——n是否大于二,如果大于二就要先输出一个二,因为二也是素数。

用C语言求n以内的素数相关推荐

  1. C语言求1000以内的素数

    Today,让我来带大家学习怎样用C语言求1000以内的素数并输出 在这里,我用到的求素数的方法是用 i 除以 2 ~ i - 1 之间的每一个整数,如果都不能整除,那 i 就是素数,下面就不多说了, ...

  2. c语言编写1000以内素数的函数6,C语言求1000以内的素数

    Today,让我来带大家学习怎样用C语言求1000以内的素数并输出 在这里,我用到的求素数的方法是用 i 除以 2 ~ i - 1 之间的每一个整数,如果都不能整除,那 i 就是素数,下面就不多说了, ...

  3. Java语言求100以内的素数(详解)

    目录 源代码: 解析过程: 重点理解: 源代码: public static void main(String args[]){int i,j;for(i=2;i<=100;i++){for(j ...

  4. c语言求n以内的素数的个数,关于求N以内素数的一点小问题(N小于一亿)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 我个人觉得第二个可能是因为内存不够的缘故,于是照着网上的办法弄了一个辅助布尔型数组来改进一下,然后就变成这样了-- 结果是 2 The total of ...

  5. 【C语言】 利用筛选法求100以内的素数

    算法思路: 原理很简单,就是当i是质(素)数的时候,i的所有的倍数必然是合数.如果i已经被判断不是质数了,那么再找到i后面的质数来把这个质数的倍数筛掉. 代码如下: //C语言 筛选法求100以内的素 ...

  6. 求100以内的素数(c语言)

    求100以内的素数(c语言) 素数的概念 素数:该数除1及其本身不再有其它的因数 2为最小的素数 代码: #include<stdio.h> void main(){for(int num ...

  7. 用c语言求1 n的素数个数 给出两种解法,【题目】求n以内的素数个数

    最近在leetCode上刷提,还是满锻炼人的,为以后面试打基础吧.不多说下面开始. 问题:求[2,n]之间的素数的个数. 来源:leetCode OJ 提示: Let's start with a i ...

  8. C语言:用筛选法求100以内的素数

    用筛选法求100以内的素数 素数:即质数,质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 筛选法:1不是素数,划去:2是素数,留下,将2的倍数划去:3没被划去,将3的倍数划去: ...

  9. c语言 用筛选法求100以内的素数,使用筛选法求100以内的素数

    使用筛选法求100以内的素数 筛选法介绍 先把N个自然数按次序排列起来. 1不是质数,也不是合数,划去. 第二个数2是质数留下来,而把2后面所有能被2整除的数都划去.2后面第一个没 划去的数是3,把3 ...

最新文章

  1. Sublime使用的插件和快捷键
  2. hdfs yarn hbase pid文件被删除解决办法:修改hadoop-daemon.sh yarn-daemon.sh hbase-daemon.sh中PID_DIR存储路径
  3. linux 批量部署 pdf,Linux服务之批量部署篇
  4. 一个引发程序员们干架的问题
  5. 弹性地基梁板的计算理论_造价人常用小帮手:30个实用小软件+44套计算表,绝对实用...
  6. qq消息服务器延时,QQ聊天消息丢失或延迟的原因分析
  7. 白话讲解:消息队列到底解决了什么问题?
  8. JMETER从数据库获取数据作为脚本参数
  9. 视频教程-js+ajax+jquery+easyui从入门到精通(项目实战)-JavaScript
  10. 共享茶室小程序都具备哪些功能?
  11. 计算机英语词汇解释,常见计算机英语词汇解释
  12. 数据不平衡问题——SMOTE算法赏析
  13. 《图算法》第五章 中心性算法-2
  14. 51单片机--蜂鸣器
  15. 腾讯bugly的使用,以及全局抓包配置
  16. AI时代的全链路监控(阿里)
  17. 扣图神器, 用Python 5行代码解决
  18. php 微信模拟登陆给用户发送消息(文字,图片,图文)
  19. 智能大屏和HTML5的小时代-杨勇强,乐视网CTO
  20. 手撕promise.all以及promise.race

热门文章

  1. 模拟手写手抄字体程序
  2. Android 布局打气筒 :教你玩转 LayoutInflater
  3. es6新特性------学好类(class)这一篇就够了
  4. 用python画狗_日常分享| 用Python画两只可爱的狗狗
  5. Ubuntu 16.04 桌面壁纸问题解决
  6. 实现价格中间有道横线
  7. 警告:No archetype found in remote catalog. Defaulting to internal catalo在远程目录中没有找到原型。默认为内部编录
  8. OVS 中的各种网络设备 - 每天5分钟玩转 OpenStack(128)
  9. python登录斗鱼_Python实现抓取斗鱼实时弹幕
  10. OA预算报销流程设计