Tsukinai的第二十一个程序
有n(n>3)个同学坐在一起,问第n个同学多少岁?他说比第n-1个同学大2岁。问第n-1个人岁数,他说比第n-
2个同学大2岁。问第n-2个同学,又说比第n-
3个同学人大两岁。依次类推。最后问第一个人,他说是10岁。请问第n个人多大?要求用自定义函数编写程序计算并返回第n个人的年龄。
注意:
- 用标准 C 语言编程,所有变量必须在第一条可执行语句前定义。
- 输入输出格式要和以下给定格式完全一致,建议拷贝粘贴输入输出格式。
输入格式:"%d"
如果n不满足题目要求的条件,则输出"Error!\n",并重新输入,直到合格为止(不考虑非法字符输入的情况)
输出格式: “The student in %dth position is %d old\n”
运行示例 1:
2↙
Error!
6↙
The student in 6th position is 20 old
运行示例 2:
6↙
The student in 6th position is 20 old
#include<stdio.h>
int age(int n);
int main()
{
int n;
while(1)
{
scanf("%d",&n);
if(n<=3)
{
printf("Error!\n");
continue;
}
else printf("The student in %dth position is %d old\n",n,age(n));
break;
}
return 0;
}
int age(int n)
{
if(1==n)return 10;
else return 2+age(n-1);
}