C语言实现素因子分解

 更新时间:2019年10月22日 09:53:52   作者:亦文梦之  
这篇文章主要为大家详细介绍了C语言实现素因子分解,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

题目说明:

给定某个正整数N,求其素因子分解结果,即给出其因式分解表达式 N = p1^k1 * p2^k2 *…*pm ^km。

输入格式说明:

输入long int范围内的正整数N。

输出格式说明:

按给定格式输出N的素因式分解表达式,即 N = p1^k1 * p2^k2 *…*pm ^km,其中pi为素因子并要求由小到大输出,指数ki为pi的个数;当ki==1即因子pi只有一个时不输出ki。

样例输入与输出:

解答说明:

从小到大依次寻找素因子,并对每一个素因子的个数做统计。

源码:

#include<stdio.h>
#include<math.h>
 
int main(void)
{
 int i,j;
 long int m, n;
 int count;
 int isPrime,flag;
 
 isPrime = 1;
 flag = 0;
 
 scanf("%ld",&n);
 printf("%ld=",n);
 m = sqrt(n);
 for(i = 2; i <= m;i++){
 if(n%i == 0){
  //printf("%d",i);
  isPrime = 0;
  count = 1;
  n = n / i;
  while(n%i == 0){
  n = n / i;
  count++;
  }
  if(flag)
  printf("*");
  else
  flag = 1;
  if(count == 1)
  printf("%d",i);
  else
  printf("%d^%d",i,count);
 }
 }
 if(isPrime)
 printf("%d",n);
 
 return 0;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • C++中整形与浮点型如何在内存中的存储详解

    C++中整形与浮点型如何在内存中的存储详解

    大家好!这期和大家分享整形和浮点型是如何在数据是如何在内存中存储,下面文章具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • 如何统计在一篇文章中某个单词出现了几次,以及第一次出现的位置

    如何统计在一篇文章中某个单词出现了几次,以及第一次出现的位置

    本文的主要内容就是统计某个单词在一篇文章中出现了几次,以及第一次出现的位置,需要的朋友可以参考下
    2015-08-08
  • C++之关于string对象的大小比较

    C++之关于string对象的大小比较

    这篇文章主要介绍了C++之关于string对象的大小比较方式,具有很好的 参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • C++20中的协程(Coroutine)的实现

    C++20中的协程(Coroutine)的实现

    这篇文章主要介绍了C++20中的协程(Coroutine)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • C语言rand和srand函数使用方法介绍

    C语言rand和srand函数使用方法介绍

    rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。srand()用来设置rand()产生随机数时的随机数种子。参数seed是整数,通常可以利用time(0)或geypid(0)的返回值作为seed
    2023-02-02
  • mac 配置Clion运行C和C++的环境的详细步骤

    mac 配置Clion运行C和C++的环境的详细步骤

    这篇文章主要介绍了mac 配置Clion运行C和C++的环境的步骤详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • C++中inline用法案例详解

    C++中inline用法案例详解

    这篇文章主要介绍了C++中inline用法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • C语言中 & 和 &&的区别详解

    C语言中 & 和 &&的区别详解

    这篇文章主要介绍了C语言中 & 和 &&的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 深入理解strcpy与memcpy的区别

    深入理解strcpy与memcpy的区别

    本篇文章是对strcpy与memcpy的区别进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C#和C++编程语言中的类浅析

    C#和C++编程语言中的类浅析

    在本篇文章里我们给大家分析了C#和C++编程语言中的类的相关知识点,正在学习的朋友们跟着操作下。
    2019-02-02

最新评论