fork download
  1. #include <stdio.h>
  2. //正の奇数nを引数とし,以下の正の奇数の和を求める関数
  3. int rec(int n){
  4. if (n % 2 == 1){ // nが奇数のとき
  5. if (n == 1){
  6. return 1;
  7. }
  8. return n + rec(n - 2); // 奇数だけ足す
  9. }
  10. else{ // nが偶数のとき
  11. if (n == 2){
  12. return 2;
  13. }
  14. return n + rec(n - 2); // 偶数だけ足す
  15. }
  16. }
  17.  
  18. int main(void) {
  19. int n = 11;
  20. printf("%d以下の正の奇数の和は%d\n", n, rec(n));
  21. return 0;
  22. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
11以下の正の奇数の和は36