#include <stdio.h>
float taxifee(int time,int miles)
{
float fee
if (miles<=3)
{
taxifee=14;
printf("费用为14\n");
}
else
{
if (time>=23||time<5)
{
fee=1+13+2.3*(miles-3)*1.2;
}
else
{
fee=1+13+2.3*(miles-3);
}
}
return taxifee;
}
int main()
{
printf("费用为%.1f\n",taxifee(9,12)+taxifee(18.12));
return 0;
}
2:你的自定义函数最后的 return taxifee; c语言是识别的,它不知道taxifee是什么意思,你应该改成 return fee;(如果你的if每个分支后都加了 return fee;那么最后的那个 return fee;也可以删掉不要)
#include <stdio.h>
float fn(float k , int t )
{
float sum;
if(k<=3)
{
sum=13+1;
}
else
{
if(t>=5&&t<23)
{
sum=14+(k-3)*2.3;
}
else
{
sum=14+(k-3)*2.3*1.2;
}
}
return sum;
}
int main()
{
float SUM = fn(12,9)+fn(12,18);
printf("小明每天打车的总费用为%f元\n",SUM);
return 0;
}
float fee后面没有加分号