1199 - C语言8.2
有n个人坐在一起。问第n个人多少岁,他说比第n-1个人大k岁。问第n-1个人多少岁,他说比第n-2个人大k岁。问第n-2个人多少岁,他说比第n-3个人大k岁。问第n-3个人多少岁,他说比第n-4个人大k岁。这样问下去,除去第1个人,所有人都说比编号小1的人大k岁,而第1个人说自己a岁。使用函数递归的方法计算并输出第n个人的年龄。
题目输入
3个用空格隔开的正整数n、k、a,分别为题目描述中代表的含义。输入保证n、k、a均不超过100。
题目输出
第n个人的年龄。
请注意行尾输出换行。
输入/输出样例
题目输入
5 2 10
题目输出
18
C语言解答
#include<stdio.h> int main() { int n,k,a,sn; scanf("%d%d%d",&n,&k,&a); sn=a+(n-1)*k; printf("%d\n",sn); return 0; }
C++解答
#include <stdio.h> int n, k, a; int age(int num) { if (num == 1) return a; return k + age(num - 1); } int main() { scanf("%d%d%d", &n, &k, &a); printf("%d\n", age(n)); return 0; }