1. 程式人生 > >C語言遞迴趕鴨子

C語言遞迴趕鴨子

一個人趕著鴨子去每個村莊賣,每經過一個村子賣去所趕鴨子的一半又一隻。這樣他經過了七個村子後還剩兩隻鴨子,問他出發時共趕了多少鴨子?經過每個村子賣出多少隻鴨子?

#include<stdio.h> 

double fun(int n)
 {
 	double m;
 	if(n==7)
 	{
 		m=2;
	 }
	 else
	 {
	 	m=(fun(n+1)+1)*2;
	 }
	 return m;
 }
 int main()
 {
 	printf("第七個=%lf\n",fun(7));
 	printf("第6個=%lf\n",fun(6));
 	printf("第5個=%lf\n",fun(5));
 	printf("第4個=%lf\n",fun(4));
 	printf("第七個=%lf\n",fun(3));
 	printf("第七個=%lf\n",fun(2));
 	printf("第七個=%lf\n",fun(1));
 	printf("總有=%lf\n",fun(0));
 	return 0;
 }