哈哈,越加越懵了
#include <stdio.h>
double youfei(int n)
{
??? if(n<=3)
?? ?{
?? ??? ?return 13;
?? ?}
?? ?else
?? ?{
?? ??? ?return 13+(n-3)*2.3;//起價13元加上超出每公里加2.3元
?? ?}
}
int main()
{
?? ?double sum=youfei(12);
?? ?double time1 = 4;
?? ?double am;
?? ?if(time1 < 5 || time1 >= 23)
?? ?{
?? ??? ?am=sum+sum*0.2;
?? ??? ?printf("加收時段,上班時收費為%f元\n",am);
?? ?}
?? ?else
?? ?{
?? ?}
?? ?double time2 = 24;
?? ?double pm;
?? ?if(time2 <5 || time2 >= 23)
?? ?{
?? ??? ?pm=sum+sum*0.2;
?? ??? ?printf("加收時段,下班時收費為%f元\n",pm);
?? ?}
?? ?else
?? ?{
?? ?}
?? ?double jiashou;
?? ?double i=sum+1;//每次加收1元
?? ?double i2=am+1;
?? ?double i3=pm+1;
?? ?double x=i*2;//上下班要叫車2次
?? ?double x2=
?? ?printf("郵費要%f元",x);
??? return 0;
}
弄好發現加收條件沒寫,越補越懵了...
#include <stdio.h>
double youfei(int n)
{
??? if(n<=3)
??? {
??????? return 13;
??? }
??? else
??? {
??????? return 13+(n-3)*2.3;//起價13元加上超出每公里加2.3元
??? }
}
int main()
{
??? double sum=youfei(12);
??? double i=sum+1;//每次加收1元
??? double x=i*2;//上下班要叫車2次
??? printf("郵費要%f元",x);
??? return 0;
}
這是原來的,要怎么添加那個加收條件?
2016-03-03
1.第一種. 因為這個題目簡單,不需要那么復雜可以直接這樣寫
#include <stdio.h>
int money(int d)? //d是distance 距離
{
??? int m;?
??? if(d<=3)
??? {
??????? return 13;
??? }
??? else
??? {
??????? int d=d-3;
?/*我理解你用【13+(n-3)*2.3】的想法,但是你直接return了是什么鬼?然后這想法是錯的,因為把【】帶入公式的話就變成遞歸了*/
??????? m=money(d)*2.3+1;? //題目里還有個每次乘車收一元錢
??? }
??? return m;
}
int main()
{
??? int n;
??? n=money(12)*2;
??? printf("總費用為:%d",n);
??? return 0;
}
2.第二種,把所有情況考慮進去。就是按照你的想法來寫的話。。。(我心累)
題目告訴你小明一天兩次打車,可是如果考慮特殊時段,還是一天乘車兩次嗎?因為題目限制,所以不用考慮那個了。
反正我是不知道該怎么寫啦。。。。。。