#includeint main() { int i, n, a; scanf_s("%d", &n); for (i = 2; i <= n; i++)//进入循环 { while (n % i ==0)//写成那样的形式的话,既然是从最小开始,只要能除尽就进入循环 { printf("%d", i); n /= i;//把n变成除后的数,判断用现在的i是否还能除尽,不能就退出while if (n != 1)//因为最后特征是n最后肯定被n/=i变成1,利用好这个特点打印* printf("*"); } } return 0; }
这个题开始我也没做出来,后来看到一句提示,还是分析了一下,除后赋值我还是第一次用..
利用好最终变量数值的特征来打印*



