分解素因子
分解素因子
Time Limit: 1500ms Memory limit: 10000K 有疑问?点这里^_^
题目描述
假设x是一个正整数,它的值不超过65535(即1< x <= 65535),请编写一个程序,将x分解为若干个素数的乘积。
输入
输入的第一行含一个正整数k (1<=k<=10),表示测试例的个数,后面紧接着k行,每行对应一个测试例,包含一个正整数x。
输出
每个测试例对应一行输出,输出x的素数乘积表示式,式中的素数从小到大排列,两个素数之间用“*”表示乘法
示例输入
2
11
9828
示例输出
11
2*2*3*3*3*7*13
提示
nkoj1249 有链接提示的题目请先去链接处提交程序,AC后提交到SDUTOJ中,以便查询存档。
来源
FJNU Preliminary 2005
#include<stdio.h>
int main()
{
int i,j,n,m,k,t,l,a[50];
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&m);
l=0;
while(m>1)
{
for(j=2;j<=m;j++)
if(m%j==0)
{
a[l]=j;
l++;
break;
}
m=m/j;
}
for(j=0;j<l;j++)
{
if(j==0)
printf("%d",a[j]);
else
printf("*%d",a[j]);
}
printf("\n");
}
}
还没有评论,来说两句吧...