【提供一个简易答案】耗时3MS

#include<stdio.h>
#include<math.h>
  
int main(viod)
{
    int a, b, i = 0;
    scanf("%d", &a);
    for (b = 2; b <= a; b++)
    {
       //最小质数因子必小于输入数字的平方根
        if(b>sqrt(a)+1)
        {
            b=a;
        }
        while (a % b == 0)
        {
            printf("%d ",b);
            a = a / b;
        }
    }
    return 0;
}