C语言实例——猜年龄(递归的运用)

问题:有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁。问第4个人多少岁,他说比第3个人大2岁。问第3人多少岁,他说比第2个人大2岁。问第2个人多少岁,他说比第1个人大2岁。最后问第1个人,他说他是10岁。编写程序,当输入第几个人时求出其对应的年龄。

分析:要求用递归函数求解问题呦,如果n等于一,则返回10,否则,返回前一个人的年龄+2,前一个的年龄就等于前一个的前一个的年龄+2……

C语言实例——猜年龄(递归的运用)

参考代码:

#include<stdio.h>
int age(int n)
{
int x;
if(n == 1)
x=10;
else
x=age(n-1)+2;
return x;
}
int main()
{
int n;
printf("请输入n值:");
scanf("%d", &n);
printf("第%d个人的年龄为%d\\n", n, age(n));
return 0;
}
/<stdio.h>

如果您喜欢,欢迎点个关注呦。


分享到:


相關文章: