分析:

1、素数是只能被1和其本身整除的数。测试一个数n,是否为素数的基本思想是,对n用2~n-1之间的整数逐个去除,只要有一个整数能将n整除,那n就不是素数,立即跳出循环。于是呢,就可以用for循环去表达:

for(i=2;i<n;i++)

If(n%1==0) break;

如果所有的数都不能将n除尽,也就是说上面的for循环可以正常退出的时候,说明n为素数。

2、输出2~100之间所有的素数,就需要对这之间所有的整数一个个测试。这同样也得使用循环结构。

下面是源代码

#include <stdio.h>int main()
{int n,i;for(n=2;n<=100;n++){for(i=2;i<n;i++)if(n%i==0) break;if(i>=n)printf("%d\t",n);}return 0;
}

但是在看完输出结果后发现,2~100以内除了2以外所有偶数都不是素数,所以说在循环时去掉n为偶数的循环,此外只需要对n用2~根号n去除就可以判断该数是否为素数了。这样减少了循环次数,缩短了程序的运行时间。

改进后的代码:

#include <stdio.h>
#include <math.h>
int main()
{int n, i, k;for (n = 2; n <= 100; n++){if (n != 2 && n % 2 == 0)continue;/*去掉2以上的所有偶数*/k = sqrt(n);for (i = 2; i <= k; i++)if (n % i == 0)break;if (i > k)printf("%d\t", n);}return 0;
}

c语言输出2~100以内所有的素数相关推荐

  1. (C语言)输出100以内的所有素数

    输出100以内的所有素数 题目:编写一个程序,找出1~100中的所有素数. 输入输出格式要求: 要求每个数后面都要输出逗号, 请不要输出其他字符 例如: 输出:2,3,5, 以下是代码: #inclu ...

  2. Java经典例题01:求100以内的所有素数并输出

    求100以内的所有素数并输出. (素数:一个大于1的整数,除了1和它本身外,不能被其他整数整除)           难度指数:★★★           方法:双重循环           解题思路 ...

  3. python编写程序,输出100以内的所有素数

    编写程序,输出100以内的所有素数 超简洁 代码 for i in range(2,100):for j in range(2,i):if i%j==0:breakelse:print(i) 运行结果

  4. C语言判断一个整数是不是素数(质数)、求100以内的所有素数、求前50个素数

    目录 一.什么是素数(质数 Prime) 二.判断一个整数是不是素数(质数)代码 三.求100以内的所有素数(质数) 四.输出前50个素数(质数) 一.什么是素数(质数 Prime) 质数又称素数.一 ...

  5. c语言 sqrt求100以内素数,C语言实现判断一个数是否为素数并求100以内的所有素数...

    判断一个数是否为素数 算法思想 设一个正整数x,sqrt(x)为x开平方后的值,若x不为素数,则x=a*b,a,b为2~x-1之间的整数,且当2=< a <= sqrt(x)时,必有sqr ...

  6. c语言一个数等于素数的乘积,C语言实现判断一个数是否为素数并求100以内的所有素数...

    判断一个数是否为素数 算法思想 设一个正整数x,sqrt(x)为x开平方后的值,若x不为素数,则x=a*b,a,b为2~x-1之间的整数,且当2=< a <= sqrt(x)时,必有sqr ...

  7. java语言 判断素数,C语言实现判断一个数是否为素数并求100以内的所有素数

    判断一个数是否为素数 算法思想 设一个正整数x,sqrt(x)为x开平方后的值,若x不为素数,则x=a*b,a,b为2~x-1之间的整数,且当2=< a <= sqrt(x)时,必有sqr ...

  8. python素数100以内_Python求出0~100以内的所有素数

    质数又称素数.一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数:否则称为合数. 一.判断一个数是否为素数: 基于定义 def is_prime(num): if num < ...

  9. 求100以内的全部素数

    题目:求100以内的全部素数,每行输出10个数.要求定义和调用函数prime(n),判断n是否为素数. #include <stdio.h> int prime(int);//函数声明中参 ...

最新文章

  1. Spring【依赖注入】就是这么简单
  2. C#上位机串口软件开发--第1讲 工程创建
  3. Linux find 用法示例
  4. 语音增强效果的测试方法
  5. 防止Entity Framework重复插入关联对象
  6. 拉拢中小网站 淘宝百度暗战升级...
  7. spring-security-学习笔记-02-基于Session的认证方式
  8. C/C++面试题—旋转数组的最小数字
  9. 圣杯布局——针对前端小白篇
  10. Vue 报错Error: No PostCSS Config found解决办法
  11. 算法学习之路|互评成绩计算
  12. Java 执行SQL脚本文件
  13. 【课程作业|图论】第四章课后习题
  14. 考勤查询统计SQL脚本。
  15. MS5611气压计数据采集(模拟IIC)/温度采集/相对高度求解
  16. 99% 的程序员想不到的一个技巧,绝对让领导眼前一亮,好感倍增!
  17. 阿里云技术专家刘晨旭:阿里云对数据可靠性保障的一些思考
  18. RulersGuides.js – 网站中实现 Photoshop 标尺效果
  19. 数据结构 | 二叉树 先根、中根、后根遍历的非递归算法
  20. HKUST-Aerial-Robotics /grad_traj_optimizationPublic

热门文章

  1. EXT4分区工具MiniTool Partition Wizard Home Edition
  2. 高德地图 街道范围_高德地图推出货车导航,解决3000万货车司机出行痛点
  3. 计算机鼠标游戏教学法,小学信息技术游戏型教学法初探
  4. Windows10下安装point-cloud-annotation-tool点云标注工具——吐血之路总结
  5. 搭建PHP环境需要安装Apache服务器,遇到的一系列的问题(切记需要用管理权限进入CMD)
  6. 一文了解游戏美术开发流程,以及可能遇到的问题
  7. 计算机作品画图板软件四年级,四年级计算机《用画图软件画画》.doc
  8. vscode找不到执行文件导致更新失败
  9. 虚拟机Vmware安装Ubuntu系统
  10. Windows10文件夹打不开提示位置不可用的解决方案