fork(1) download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. //把答案往前傳
  5. int sum_1(int n){
  6. if(n == 0){
  7. return 0;
  8. }else{
  9. return n+sum_1(n-1);
  10. }
  11. }
  12.  
  13. //把答案往後傳
  14. void sum_2(int n,int ans2){
  15. if( n==0 ){
  16. printf("遞迴二 1+2+...+10=%d\n",ans2);
  17. return;
  18. }else{
  19. sum_2(n-1,ans2+n);
  20. }
  21. }
  22.  
  23. int main(int argc, char *argv[])
  24. {
  25.  
  26. int ans1 =sum_1(10);
  27. printf("遞迴一 1+2+...+10=%d\n",ans1);
  28.  
  29. sum_2(10,0);
  30. system("PAUSE");
  31. return 0;
  32. }
  33.  
Success #stdin #stdout #stderr 0s 2248KB
stdin
Standard input is empty
stdout
遞迴一  1+2+...+10=55
遞迴二  1+2+...+10=55
stderr
sh: PAUSE: not found