算法提高 8-1因式分解
時間限制:10.0s 內存限制:256.0MB
問題描述
設計算法,用戶輸入合數,程序輸出若個素數的乘積。例如,輸入6,輸出2*3。輸入20,輸出2*2*5。
樣例
與上面的樣例輸入對應的輸出。
例:
例:


數據規模和約定
輸入數據中每一個數在int表示范圍內。
作者注釋:這題巧用while循環的話蠻容易的。
1 #include<stdio.h> 2 main(){ 3 int n,x=1; 4 scanf("%d",&n); 5 bool flag=true; 6 while(n!=1){ 7 x++; 8 while(n%x==0){ 9 n/=x; 10 if(flag){ 11 flag=false; 12 printf("%d",x); 13 }else{ 14 printf("*%d",x); 15 } 16 } 17 } 18 }