C語言,輸入一個正整數,按由大到小的順序輸出它的所有質數的因子(如180=5*3*3*2*2)


 1 #include <iostream>
 2 using namespace std;
 3  
 4 int main()
 5 {
 6     long num;
 7      
 8     while(cin >> num){
 9         if(num == 1){
10             cout << num << endl;
11             continue;
12         }
13          
14         for(int i = 2; i <= num; ++i){
15            if(num%i == 0){              
16                num = num/i;
17                cout << i << " ";
18                i--;//遇到一個質數,那么該質數可能會被整除多次
19            }          
20         }
21         cout << endl;       
22     }   
23      
24     return 0;
25 }
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM