问题描述
设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2*3。输入20,输出2*2*5。
样例
与上面的样例输入对应的输出。
例:
数据规模和约定
输入数据中每一个数在int表示范围内。
#include <stdio.h>
void shuchu( int);
int q_su(int);
int main(void)
{
int n;
scanf("%d",&n);
shuchu(n);
return 0;
}
void shuchu( int n)
{
int i;
for(i=1;i<=n;i++)
{
if(n%i==0&&q_su(i)==1)
{
if( (n/=i) != 1 )
{
printf("%d*", i);
}
else
{
printf("%d", i);
}
i=1;
}
}
}
int q_su(int n)
{
int i,s=0;
for(i=1;i<n;i++)
{
if(n%i==0)
{
s+=1;
}
}
if(s==1)
{
return 1;
}
return 0;
}