上机内容:C++程序的编写和运行
上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程
1.我的程序:
2./*
3.* 程序的版权和版本声明部分:
4* Copyright (c) 2013, 烟台大学计算机学院
5.* All rights reserved.
6.* 文件名称:test.cpp
7.* 作 者:薛富磊
8.* 完成日期:2013 年 11月 20日
9.* 版 本 号:v1.0
10.* 对任务及求解方法的描述部分:
11.* 输入描述:无
12.* 问题描述:有5个人坐在一起,问第5个人多少岁?他说比第4个人大两岁。问第4个人,他说比第3个人大两岁,依次如此……第一个人20岁。那么第五个人呢?
13.* 程序输出:“28”
14.* 问题分析:这是一个递归问题,age(5)=age(4)+2
age(4)=age(3)+2
age(3)=age(2)+2
age(2)=age(1)+2
age(1)=20
15* 算法设计:age(1)=20 (m=20)
age(m)=age(m-1)+2
#include <iostream>
using namespace std;
int age(int); //函数声明
int main() // 主函数
{
cout<<age(5)<<endl;
return 0;
}
int age(int m) //求年龄的递归函数
{
int c; //用作为存放年龄的变量
if(m==1)
c=20; //当m=1年龄为20
else
c=age(m-1)+2; //当m》1,此人年龄是他前一个人的年龄加2
return c; //将年龄值带回主函数
}
心得:
递归与数列有异曲同工之妙