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;
}

时间限制 1 秒
内存限制 32 MB
讨论 统计
上一题 下一题