/...算出來68問題在哪里
#include <stdio.h>
int cost(double distance,int time)
{
??? double sum;
??? if(distance<=3)
??? {
??????? sum=13;
??? }
??? else if(distance>3)
??? {
??????? if(time<=5||time>23)
??????? {
??????????? sum=13+(distance-3)*2.3*1.2;
??????? }
??????? else if(time>5&&time<=23)
??????? {
??????????? sum=13+(distance-3)*2.3;
??????? }
??? }
??? return sum+1;
}
int main()
{
??? printf("小明路費為%d\n",cost(12,18)+cost(12,9));
??? return 0;
}
2018-09-04
你自定義函數(shù)的時候就寫的是整型,把int cost(double distance,int time)改成double?cost(double distance,double time),然后再把printf中的%d改成%f就不會報錯
2018-09-06
#include <stdio.h>
float totalprice(int time,int distance)
{
? ? float perprice=2.3,totalprice;
? ? if(time>=5&&time<23);
? ? else
? ? ? ? perprice+=perprice*0.2;
? ? if(distance<=3)
? ? ? ? return 14;
? ? else
? ? {
? ? ? ? totalprice=13+(distance-3)*perprice+1;
? ? ? ? return totalprice;
? ? }
}
int main()
{
? ? int time1=9,time2=18,distance=12;
? ? float price1=totalprice(time1,distance);
? ? float price2=totalprice(time2,distance);
? ? printf("%.2f",price1+price2);
? ? return 0;
? ??
}
2018-09-03
并且將printf中%d改為%f會報錯