為什么我輸出的答案是68 整數 不是69.4呢
#include <stdio.h>
float tim,km,money;
int part(float tim,float km)
{
? ? if(tim>5&&tim<23)
? ? {
? ? ? ? if(km<=3)
? ? ? ? {
? ? ? ? money=14;
? ? ? ? }
? ? ? ? else?
? ? ? ? {
? ? ? ? ? ? money=13+(km-3)*2.3+1;
? ? ? ? ? ? printf("白天費用為%f\n",money);
? ? ? ? ? ? }
? ? ? ? return money;
? ? }
? ? else if(tim>=23||tim<=5)
? ? {
? ? ? ? if (km<=3)
? ? ? ? money=14;
? ? ? ? else?
? ? ? ? {money=13+(km-3)*2.3*1.2+1;
? ? ? ? printf("晚上天費用為%f",money);}
? ? ? ? return money;
? ? }??
? ? else
? ? return 0;
? ??
? ??
}
int main()
{? ?
? ? float sum;
? ? sum=part(9,12)+part(18,12);
? ? printf("小明每天打車的總費用是%.1f元\n",sum);
? ? return 0;
}
輸出的結果:
白天費用為34.700001 白天費用為34.700001 小明每天打車的總費用是68.0元
2019-09-03
條件判斷語句就有問題了,時間大于等于23或者時間小于5,并不是小于等于
2019-09-26
part 執行結果應該是34.7? 為什么后面還有0001
2019-09-07
因為你的part函數定義為int,應該是這個原因吧