Dzwebs.Net

撰写电脑技术杂文十余年

C程序的算法:将正整数分解质因数

Admin | 2007-12-20 20:55:30 | 被阅次数 | 14161

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  问题需求:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

  需求分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

  A、如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

  B、如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。

  C、如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

  程序源代码:

  main()
  {
  int n,i;
  printf("\nplease input a number:\n");
  scanf("%d",&n);
  printf("%d=",n);

  for(i=2;i<=n;i++)
   {
    while(n!=i)
    {
     if(n%i==0)
     { printf("%d*",i);
      n=n/i;
     }
     else
      break;
    }
  }

  printf("%d",n);
  }


该杂文来自: 算法杂文

上一篇:C程序的算法:打印水仙花

下一篇:C算法之判定成绩等级

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计