黑马程序员技术交流社区

标题: 这是我做基础测试的一个题目 [打印本页]

作者: yangguangyu    时间: 2015-9-11 22:01
标题: 这是我做基础测试的一个题目
这是我做基础测试的一个题目:
有八个人坐在一起,问第8个人多少岁?他说比第7个人大3岁。问第7个人多少岁?他说比第6个人大3岁。问第6个人多少岁?他说比第5个人大3岁。问第5个人多少岁?他说比第4个人大3岁,以此类推,最后问第1个人多少岁?他说是10岁。请问第8个人多大?(C语言)但是只是知道是递归,但绕了好一会还是搞不太懂,小伙伴们有思路可以告诉我的吗?谢谢。
作者: 王元18611727076    时间: 2015-9-11 22:42
10 13 16 19 22 25 28 31 34 ······
知道了吗
作者: 张健康ios0826    时间: 2015-9-11 23:40
递归~~~~
作者: 羊口羊口羊    时间: 2015-9-12 00:21
#include <stdio.h>

void main()
{
        int num=8,age=10;
        for(int i=1;i<8;i++)
                age+=3;
        printf("最后一个的岁数是 %d\n",age);
}
作者: bowenfei    时间: 2015-9-12 00:30
int  ageN(int n){
        if(n=1){
          age=10;
      }
          else  {get_age=age(n-1)+3;
      }
       return get_age;
   }
#include <stdio.h>
int main(){
  printf ("第八个人的年纪是%d",ageN(8));
   return(0);
   }
楼主能帮我运行下吗?我这边没法运行。看程序对不对。
作者: 960743995    时间: 2015-9-12 09:00
基础课程里面 有
作者: 安若曦    时间: 2015-9-12 10:15
C语言递归函数那一节就讲过了,可以仔细再看看视频就会懂的
作者: bowenfei    时间: 2015-9-12 11:02
bowenfei 发表于 2015-9-12 00:30
int  ageN(int n){
        if(n=1){
          age=10;

if后语句错了。n==1
作者: 荣荣    时间: 2015-9-13 06:14
c语言递归那一节课,讲的内容差不多,楼主可以把视频再看一遍




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2