A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 天凉好个秋。。 中级黑马   /  2015-4-21 09:24  /  1085 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

有八个人坐在一起,问第8个人多少岁?他说比第7个人大3岁。问第7个人多少岁?他说比第6个人大3岁。问第6个人多少岁?他说比第5个人大3岁。问第5个人多少岁?他说比第4个人大3岁,以此类推,最后问第1个人多少岁?他说是10岁。请问第8个人多大?(C语言)

3 个回复

倒序浏览
递归,用for也可以做出来
  1. #include<stdio.h>

  2. int test(int n);

  3. int main()
  4. {
  5.     int age = 0;
  6.    
  7.     age = test(8);
  8.    
  9.     printf("%d\n",age);
  10.    
  11.     return 0;
  12. }


  13. int test(int n)
  14. {
  15.     if(n==1)return 10;
  16.    
  17.     return test(n-1)+3;
  18. }
复制代码
回复 使用道具 举报
可以用递归方法解决!
回复 使用道具 举报
  1. #include<stdio.h>
  2. int age(int n)
  3. {
  4.     if(n == 1)
  5.     {
  6.         return 10;
  7.     }
  8.     else
  9.     {
  10.         return age(n-1)+3;
  11.     }
  12. }
  13. int main()
  14. {
  15.     int c = age(8);
  16.     printf("第8个人得年龄:%d\n", c);
  17.     return 0;
  18. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马