#C04L02P02. C04.L02.质数的判断、约数复习.填空题2.分解质因数.2

C04.L02.质数的判断、约数复习.填空题2.分解质因数.2

题目描述

请你把一个数分解质因数。

输入格式

一个整数n。(1 <= n <= 2147483647 )

输出格式

整数n分解质因数后的因子。从小到大排。

样例

12
2 2 3
7
7

程序天空

#include<bits/stdc++.h>
using namespace std;
long long n,s=0;
int main()
{
	int i,n,nn;
	scanf("%d",&n);

	nn= 填空(1) ;
	for(i=2;i<=nn;i++) //枚举到 n 的平方根即可, n 不可能有 1 个以上大于 其平方根的质因数
	{
		while( 填空(2) ) // i 是 n 因数,而且一定是质因数,用while循环来分解
		{
			printf("%d ",i);	
			n = 填空(3) ;
		}

		if(n==1)  //有没有这两句都可以,有的话可以更快一些 
			break;
	}

	if( 填空(4) )
		printf("%d",n);			

	return 0;
}

填空(1): {{ input(1) }}

填空(2): {{ input(2) }}

填空(3): {{ input(3) }}

填空(4): {{ input(4) }}