此题能否用递归来解决。
#include <stdio.h>
int Time;
double price=2.3;
double charge(n,Time)
{
if(Time<=23&&Time>5)
{
if(n<=3)
{
return 13;
}
else
{
return charge((n-1),Time)+price;
}
}
else
{
if(n<=3)
{
return 13;
}
else{
return charge((n-1),Time)+1.2*price;
}
}
}
int main()
{
double price1=charge(12,9);
double price2=charge(12,18);
printf("%.2f\n",++price1 + ++price2);
return 0;
}
以上代码也可以实现计算打车总费用,不过对于这样的代码不知道有没有什么问题。
同时当在23点之后和五点之前,3公里内的费用该怎么计算。
请高手帮忙解决!谢谢!