题目正文
将一个正整数N(1< N< 32768)分解质因数。例如,输入90,打印出90=233*5。
输入
输入一个正整数N(1< N< 32768)
输出
输出N的质因数分解形式
样例
66
66=2311
代码
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
cout<<n<<"=";
for(int i=2;i<=n;i++)
{
//cout<<n<<endl;
while(n%i==0)
{
cout<<i;
n=n/i;
//cout<<n<<endl;
if(n!=1)
cout<<"*";
}
}
return 0;
}
总结
我一开始是把while写成了if,就一直报错不对,后来写成while 之后就对了,但是我不知道为什么不能用if,我也测试了如果用if的话会少一个3