fork download
  1. #include <stdio.h>
  2.  
  3. void bunkai(int a){
  4. int bunbo,amari;
  5. if(a==1)
  6. return;
  7. for(bunbo=2;bunbo<=a;bunbo++){ //割り切れる数を探す
  8. amari=a%bunbo;
  9. if((amari==0)&&(a/bunbo==1)) //最後の数のとき×を表示させない
  10. printf("%d",bunbo);
  11. else if(amari==0){
  12. printf("%d×",bunbo);
  13. bunkai(a/bunbo);
  14. return; //戻ってきたときforが続いてしまうので終わらせる
  15. }
  16. }
  17. }
  18. int main(void) {
  19. int n;
  20. printf("3以上の整数を入力してください\n");
  21. scanf("%d",&n);
  22. printf("%d=",n);
  23. bunkai(n);
  24. return 0;
  25. }
  26.  
Success #stdin #stdout 0s 5292KB
stdin
60
stdout
3以上の整数を入力してください
60=2×2×3×5