請(qǐng)幫忙看看哪出問題了?
剛開始無從下手,看了下別人的,原來就是思路找不準(zhǔn),寫完了后發(fā)現(xiàn)輸出結(jié)果一直都是0.
#include <stdio.h>
int carcost(int t,int h)
{
? ? float money;
? ? if(h<=3)
? ? {
? ? ? ? money=14;
? ? ? ? printf("費(fèi)用為%f\n",money);
? ? }
? ? else
? ? {
? ? ? ? if(t>=5&&t<23)
? ? ? ? {
? ? ? ? ? ? money=14+2.3*(h-3);
? ? ? ? ? ? printf("費(fèi)用為%f\n",money);
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? money=14+2.76*(h-3);
? ? ? ? ? ? printf("夜間費(fèi)用為%f\n",money);
? ? ? ? }
? ? }
? ? return money;
} ? ?
int main()
{
? ? printf("打車總費(fèi)用為%f\n",carcost(9,12)+carcost(18,12));
? ? return 0;
}
2016-12-14
本身解題沒有邏輯錯(cuò)誤,代碼也對(duì),只不過在最后的打車總費(fèi)用應(yīng)該在定義一個(gè)變量,這樣才能出結(jié)果,我也不知道你這樣為什么不行,因?yàn)橹拔乙策@樣做過,沒結(jié)果,然后才想到多定義一個(gè)變量的;
、、
#include <stdio.h>
float ?carcost(int t,int h)
{
? ? float money;
? ? if(h<=3)
? ? {
? ? ? ? money=14;
? ? ? ? printf("費(fèi)用為%f\n",money);
? ? }
? ? else
? ? {
? ? ? ? if(t>=5&&t<23)
? ? ? ? {
? ? ? ? ? ? money=14+2.3*(h-3);
? ? ? ? ? ? printf("費(fèi)用為%f\n",money);
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? money=14+2.76*(h-3);
? ? ? ? ? ? printf("夜間費(fèi)用為%f\n",money);
? ? ? ? }
? ? }
? ? return money;
}
int main()
{
? ? float total;
? ? total=carcost(9,12)+carcost(18,12);
? ? printf("打車總費(fèi)用為%f\n",total);
? ? return 0;
}