题目描述:

设计递归函数void void printFactor( int, int );打印出对n进行素数分解的结果。

当执行void printFactor(60,1)时,打印效果为:

60=223*5。

关于素数分解的描述,见讲义。

设计程序,已知一段数据范围[a,b],且a<=b,要求对其中的每一个数进行素数分解。你也可以设计其它辅助函数,如判断素数的函数isPrime(n)。

输入与输出要求: 输入两个正整数a、b,代表所分解的区间,满足1<=a<=b<=100000,且b-a<=100。输出b-a+1行,即b-a+1个数的分解。

函数接口定义:

函数原型如下:
void printFactor( int, int );
其中第一个参数为待分解的整数,第二个参数需自行设计。函数无返回值。

输入样例:

100 105

输出样例:

100=2*2*5*5
101=101
102=2*3*17
103=103
104=2*2*2*13
105=3*5*7

代码实现:

#include<stdio.h>
#include<math.h>
int isprime(int n);
void printFactor( int, int ); int main()
{int a,b,i ;scanf( "%d%d", &a, &b );for( i = a ; i <= b ; i++ )printFactor( i , 1 ) ;    return 0;
}int isprime(int n)
{if(n==1) return 0;if(n>1){int i;for(i=2;i<=(int)sqrt(n);i++){if(n%i==0) break;}if(i>(int)sqrt(n)) return 1;else return 0;}
}void printFactor(int n,int a)
{if(a==1&&n!=1) printf("%d=",n);if(a==1&&n==1) printf("1=1\n");a++;if(isprime(n)==1){printf("%d\n",n);//return;}if(isprime(n)==0){for(int i=2;i<=(int)sqrt(n);i++){if(n%i==0&&isprime(i)==1){printf("%d*",i);printFactor(n/i,a);break;}}}
}

实验6_9 素数分解(递归实现)相关推荐

  1. 6-6 实验6_9_素数分解 (100分)

    6-6 实验6_9_素数分解 (100分) 设计递归函数void void printFactor( int, int );打印出对n进行素数分解的结果. 当执行void printFactor(60 ...

  2. C++正整数的素数分解的实现算法(附完整源码)

    C++正整数的素数分解的实现算法 C++正整数的素数分解的实现算法完整源码(定义,实现,main函数测试) C++正整数的素数分解的实现算法完整源码(定义,实现,main函数测试) #include ...

  3. C语言素数分解prime factoriziation算法(附完整源码)

    素数分解prime factoriziation算法 素数相关结构体定义 实现了以下相关接口 C语言素数分解prime factoriziation算法完整源码(定义,实现,main函数测试) 素数相 ...

  4. upc第五场问题 F: 素数分解

    问题 F: 素数分解 时间限制: 1 Sec 内存限制: 128 MB 题目描述 素数,又称质数,是指除 1 和其自身之外,没有其他约数的正整数.例如 2.3.5.13 都是合 数,而 4.9.12. ...

  5. c语言实现进行偶数素数分解

    这是一种在 C 语言中实现偶数素数分解的算法: 判断输入的数字是否为偶数.如果是,则将其分解为两个因数:2 和该数字除以 2 的商. 否则,设置一个循环,从 3 开始,每次加 2,直到找到第一个小于等 ...

  6. C语言实验——判断素数(循环结构java)

    C语言实验--判断素数(循环结构) Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 从 ...

  7. 素数分解几点素数java_Java素数分解程序

    我正在研究用Java实现的素数分解程序.目的是找到最大的素因600851475143(项目Euler问题3).我想我已经完成了大部分工作,但是却遇到了一些错误.而且我的逻辑似乎不对,特别是我为检查数字 ...

  8. 素数分解 (2016_6)

    素数分解 (2016_6) 素数,又称质数,是指除 1和其自身之外,没有其他约数的正整数.例如 2.3.5.13 都是质 数,而 4.9.12.18 则不是. 虽然素数不能分解成除 1和其自身之外整数 ...

  9. 5.素数分解(算法)2021.11.11

    任何一个大于1的自然数 N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积: 素数分解  简单来说就是将一个和数N除以>1&&<=N开方的素因子. 例如一个和数60. ...

最新文章

  1. 无线Trace脚本(旧格式)-平均延时
  2. 轴只显示5个刻度_组团投资5亿元!武平集中签约5个新型显示产业链投资项目
  3. 【ActiveMQ】消息生产者自动注入报错:Could not autowire. No beans of 'JmsMessagingTemplate' type found...
  4. 致远协同软件手机版让移动办公不再是梦想
  5. python3 执行系统命令_Python3 执行系统命令并获取实时回显功能
  6. django08: 视图与路由(旧笔记)
  7. 天天动听 半透明Menu效果
  8. eclipse插件开发(三) 简易4页签编辑器(源码 | 设计 | JS | CSS)配色修复JS多行注释问题
  9. 《统计学习方法》代码全解析——第三部分k近邻法
  10. 遗传算法的原理与python实现
  11. 获取硬盘序列号(VC)
  12. 织梦dedecms蓝色商务学院职业技术学校网站模板
  13. how JMP JSL auto run
  14. date linux 计算日期,科技常识:linux命令详解date使用方法(计算母亲节和父亲节日期脚本示例)...
  15. Win 10 下无法安装.net framework 3.5,错误代码0x800F081F的解决方案
  16. Windows 优质软件
  17. 一篇文章让你全面了解TDengine
  18. Java 对象排序完整版
  19. 数据结构课程设计之员工通讯录
  20. 【学习笔记】Git企业级使用—完整流程

热门文章

  1. 一嗨租车新疆自驾推荐:去霍城寻找最浪漫的夏天
  2. LED流水灯C51源代码及Proteus仿真电路图
  3. 教育部:集中整顿威胁考试安全的培训机构
  4. seo前景如何?就业前景怎么样?
  5. yum/vim工具的使用
  6. Android中的事件处理研究
  7. .ipynb文件转为.py文件的具体步骤
  8. 苹果开发者账号怎么取消自动续费
  9. 华为云空间官网登录方法
  10. 手机chrome书签文件导出教程