编写一个函数:求一个给定数的所有因子。如:73=2*2*2*3*3

是C++语言的,

稍作修改就可以了,如下:

#include <iostream>
using namespace std;
#include <math.h>
int f(int n)
{//判断是否是素数,是则返回1,否则返回0
if(n%2==0)return 2;
int i=3;
while(i<=sqrt(n))
{
if (n%i==0)return i;
i+=2;
}
return 1;
}
void fun(int n)
{
cout<<n<<"=";
while(n!=2&&f(n)!=1)
{
cout<<f(n)<<"×";
n/=f(n);
}
cout<<n<<endl;
}
void main()
{
int n;
cout<<"input n :";
cin>>n;
if(n<2)cout<<"error!\n";
else fun(n);
}
温馨提示:答案为网友推荐,仅供参考
相似回答