定义:素数一般指质数。质数是指在大于1的自然数中,除1和它本身以外不在有其他因数的自然数。

那么怎么通过代码的方式来判断1~100中的素数并打印出来呢?

思路1:通过素数的定义,假设我们取数字m,用m去除2~m-1的所有整数,若每次相除余数都为0,那么m肯定就是素数了。

代码实现:

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{int i = 0;for (int m = 2; m <= 100; m++)  //遍历1~100所有数{for (i = 2; i <= m - 1; i++)//遍历2~m-1中的数{if (m % i == 0){break; //说明2~m-1中存在一个数能被m整除,则此m不是素数}}//跳在这情况有两个,(1.因上面break终止循环,不是素数  2.break未发生,是素数)所以我们要用if判断 if (i > (m - 1)) //如果是素数的话,i值肯定大于m-1{printf("%d ", m);//打印素数}}return 0;
}

运行结果:

 思路2:还可以运用一个数学思想,假设取数字m,那就是我们可以用m去除2~sqrt(m)之间的所有整数,若都不能被m整除,那么m就是素数。这是一个数学原理。

注:sqrt()是一个数学函数,表示开平方,要引头文件<math.h>

代码实现:

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
int main()
{int i = 0;for (int m = 2; m <= 100; m++)  //遍历1~100所有数{for (i = 2; i <= sqrt(m); i++)    //2~根号m的所有数{if (m % i == 0){break;  //如果2~根号m的所有数能被m整除,则不是素数}}if (i > sqrt(m)) //判断若i大于根号m,则m是素数{printf("%d ", m);  //打印素数}}return 0;
}

运行结果:

 思路3:我们知道除2以外素数肯定是奇数,我们取数字2~200之间的一个数字m,用m去除3~m之间的所有奇数,若都不能被整除,那么m肯定是素数。

代码实现:

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
int main()
{int i = 0;for (int m = 3; m <= 200; m+=2){for (i = 3; i < m; i += 2){if (m % i == 0){break;}}if (i == m){printf("%d ", m);}}return 0;
}

运行结果:

 判断素数的方法有很多,上面是我推荐的三种简易方法判断素数,希望能帮助大家!

素数——C语言简易方法相关推荐

  1. java 语言如何判断素数_C语言实验之判断素数(循环结构java)方法讲解

    C语言实验之判断素数(循环结构java)方法讲解 Problem Description 从键盘上输入任意一个正整数,然后判断该数是否为素数. 如果是素数则输出"This is a prim ...

  2. java语言中如何表示素数,使用Java语言求素数的几个方法

    使用Java语言求素数的几个方法 今天找了一篇"面试50题"的文档,第一题是求fibonacci数列,使用递归很容易就实现了,没什么难度. 第二题是输出101~200之间的素数,没 ...

  3. C语言判断素数的两种方法

    C语言判断素数的两种方法 素数又称质数.所谓素数是指除了 1 和它本身以外,不能被任何整数整除的数,例如17就是素数,因为它不能被 2~16 的任一整数整除. 思路1):因此判断一个整数m是否是素数, ...

  4. 怎么将c语言作业保存到word,C++程序中导出Word文档的简易方法_c语言

    如果您要在应用程序中处理Word文档,可以参考MSDN. Lori Turner. Automating Microsoft Office 97 and Office 2000,该文内容详细全面,但是 ...

  5. win8编程c语言,Win8系统怎么运行C语言 win8系统运行C语言的方法

    C语言是一门通用计算机编程语言,是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言,但是许多win8系统用户并不知道要怎么运行C语言,针对这个情 ...

  6. Windows7桌面变更语言简易切换不重装

    Windows7桌面变更语言简易切换不重装  就能够手機監聽器发觉如今的Windows7体系从图标.菜单.协助到控制面板等等都不再是熟习的简体中文了而是酿成了所选择的繁体中文或英文, 当完成注销操纵再 ...

  7. 【简易方法】Markdown 格式 的文章发布到微信公众号

    [简易方法]Markdown 格式 的文章发布到微信公众号 1 关于Markdown Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档. Markdown 语言在 2 ...

  8. windows python2和python3共存_windows python2与python3环境共存简易方法

    题图来源(Code Lyoko E81的13分55秒位置)将浏览器拉窄即可看到全图. PC版网页左上角从上到下第二个图标是目录,请多用目录. 网页右下角按钮为返回顶部,请多用返回顶部来查看顶部目录. ...

  9. linux下测试磁盘的读写IO速度-简易方法

    linux下测试磁盘的读写IO速度-简易方法 参考资料: https://blog.csdn.net/zqtsx/article/details/25487185 一:使用hdparm命令 这是一个是 ...

最新文章

  1. 彩色?翅膀?摩斯电码?让你拥有独一无二的微信昵称!
  2. Selenium2+python自动化58-读取Excel数据(xlrd)
  3. php基础面试选择题,php面试之javascript经典面试题
  4. react学习(68)--ant design inputNumber
  5. 软件设计师08-程序语言基础知识
  6. JavaScript在一个数组中插入另一个数组
  7. Hive DDL DML
  8. dubbo原理和机制_面试官几个 Dubbo 微服务框架问题,把我整懵了?
  9. http协议 https协议
  10. 餐饮后厨计算机应用,美萍餐饮管理系统,餐饮管理软件,餐饮软件,酒店收银系统,饭店点菜系统 --- 管理软件 美萍是专家!...
  11. 关于手心输入法配置完整自然码辅码
  12. varchar(1)的怪异现象
  13. 论文阅读-Detecting and Recovering Sequential DeepFake Manipulation(SeqFakeFormer)
  14. 写好 JS 条件语句的 5 条守则
  15. LintCode 183.木材加工
  16. DI的概念和实现原理—Spring系列介绍
  17. 微信公众账号使用获取token次数到达上限reach max api daily quota limit rid: 5fd6fd6a-49fcc7d4-65df845f
  18. 华为鸿蒙os英语,华为正式发布HarmonyOS鸿蒙操作系统
  19. Linux内核配置(二) :CPU类型配置
  20. ADAS推高毫米波雷达需求,上游企业如何跟进?

热门文章

  1. python AttributeError: module 'pygame' has no attribute 'display'
  2. Microsoft Office全家桶激活踩坑
  3. JAVA 水果机游戏及编码
  4. MATLAB如何画两个不同内切圆
  5. 苹果Mac自带词典完美扩充
  6. 也曾梦想仗剑走天涯,最后终于还是活成了大多数
  7. python数据类型定义为_一Python 数据类型
  8. 如何在Windows XP上飆速Android intel模擬器加速器(HAXM)
  9. win10计算机的用户和组,win10用户和组介绍
  10. 腾讯三面:40 亿个 QQ 号码如何去重?