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