解题思路:
一开始想用递归,但是好像没法写?因为递归应该是个递增数列,同时第一项已知,而且第一次传入的参数是最后一项。但本题是递减数列,同时最后一项已知,而且第一次传入的参数是最后一项。(相当于递增数列、第一项已知、首次传入第一项,这样就不知道要求第几项的值了)
注意事项:
题目本身很简单,本人从中得到的结论是:想用递归之前一定要想清楚递归的条件。
参考代码:
#include <iostream> using namespace std; int peachNum(int day); int main() { int N = 0; //第N天 cin >> N; cout << peachNum(N) << endl; return 0; } int peachNum(int day) { int peach = 1; //桃子总数 for(int i = 1; i < day; i++) { ++peach *= 2; } return peach; }
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:609 |
【蟠桃记】 (C语言代码)浏览:651 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:711 |
DNA (C语言描述,蓝桥杯)浏览:1555 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:902 |
简单的a+b (C语言代码)浏览:416 |
C语言训练-排序问题<1> (C语言代码)浏览:355 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:1269 |
简单的a+b (C语言代码)浏览:449 |
简单的a+b (C语言代码)浏览:657 |