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>

如果您喜歡,歡迎點個關注呦。


分享到:


相關文章: