实例说明:
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想在吃时,发现只剩下一个桃子了。编写程序求猴子第一天摘了多少个桃子?
实现过程:
- 打开C语言编程环境(小编这里用的是Vscode)新建一个C源文件,并输入要创建的C源文件的名称。
- 引用头文件,代码如下: #include <stdio.h>
- 定义day,x1,x2为基本类型,并为day和x2赋初值9和1.
- 使用while语句右后向前推出第一天的桃子数。
- 输出结果。
- 程序主要代码如下。
#include <stdio.h>
int main(int argc, char const *argv[])
{
int day,x1,x2; //定义day,x1,x2 3个变量为基本类型
day = 9;
x2 = 1;
while (day > 0)
{
//第一天吃桃数是第二天数加1后的两倍
x1 = (x2 + 1) * 2;
x2 = x1 ;
//因为从后向前推所以天数递减
day--;
}
//输出桃子的总数
printf("the total is %d\n",x1);
return 0;
}
运行结果:
技术要点:
本实例的思路基本上是先找出变量见的关系,也就是要明确第一天桃子数和第二天桃子数之间的关系,即第二天桃子数加1的2倍等于第一天的桃子数。