合數(shù)分解//循環(huán)


【問題描述】
由數(shù)學(xué)基本定理可知:任何一個大于1的非素數(shù)整數(shù)(即合數(shù))都可以唯一分解成若干個素數(shù)的乘積。編寫程序,從控制臺讀入一個合數(shù)(合數(shù)的大小不會超過int數(shù)據(jù)類型表示的范圍),求該合數(shù)分解成素數(shù)的最小集。該最小素數(shù)集由合數(shù)分解成的素數(shù)組成,并且重復(fù)的素數(shù)只保留一個。按從小到大的順序輸出求得的最小素數(shù)集。
【輸入形式】
從控制臺輸入一個合數(shù)。
【輸出形式】
在標準輸出上按從小到大順序輸出求得的最小素數(shù)集,各素數(shù)之間以一個空格分隔,最后一個素數(shù)后空格可有可無。
【輸入樣例】
12308760
【輸出樣例】
2 3 5 29 131
【樣例說明】
輸入的合數(shù)為12308760,該合數(shù)分解成的素數(shù)乘積為:2*2*2*3*3*3*3*5*29*131。這些素數(shù)形成的最小集為:2 3 5 29 131。
【評分標準】
該題要求按照從小到大的順序輸出最小素數(shù)集,提交程序文件名為primes.c。

最初的關(guān)于i的大循環(huán)是一直進行的,內(nèi)嵌的小循環(huán)也沒有改變i的值,所以這的形式取素數(shù)時產(chǎn)生的素數(shù)數(shù)列內(nèi)的素數(shù)是不重復(fù)的;它只判斷素數(shù)從小到大能不能整除,能則輸出,然后嘗試下一個素數(shù);不判斷能除幾回,也不會重復(fù)輸出素數(shù)。
by 天外高人