誰能救救我,大神
#include<stdio.h>
void main()
{
?? ?float sum(int h,int ODO);
?? ?int c,i,xh,xODO;
?? ?float zsum=0,s;
?? ?printf("請輸入做了幾次車:\n");
?? ?scanf("%d",&c);
?? ?c++;
?? ?for(i=1;i<c;i++)
?? ?{
?? ??? ?
?? ??? ?printf("請輸入第%d次的時間和路程:",i);
?? ??? ?scanf("%d %d",&xh,&xODO);
?? ??? ?s=sum(xh,xODO);
?? ??? ?zsum=zsum+s;
?? ??? ?
?? ?}
?? ?printf("總共花了%d",zsum);
}
float sum(int h,int ODO)
{
?? ?float PI=2.3,ZF=0.2;
?? ?int FF=13,BS=1;
?? ?float he;
?? ?if(h>=5&&h<23)
?? ?{
?? ??? ?if(ODO>3)
?? ??? ?{
?? ??? ??? ?he=(ODO-3)*PI+BS+FF;
?? ??? ?}
?? ??? ?else
?? ??? ?{
?? ??? ??? ?he=BS+FF;
?? ??? ?}?? ?
?? ?}
?? ?
?? ?
?? ??? ?if(h>23&&h<=24||h>0&&h<5)
?? ??? ?{
?? ??? ??? ?if(ODO>3)
?? ??? ??? ?{
?? ??? ??? ??? ?he=(ODO-3)*(1+ZF)*PI+BS+FF;
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ?{
?? ??? ??? ??? ?he=BS+FF;
?? ??? ??? ?}
?? ??? ??? ?
?? ??? ?}
?? ?return he;
}
2016-04-14
錯因:main函數(shù)里面最后那個printf函數(shù)里,應該是%f,而不是%d。
2016-05-05
#include <stdio.h>
int Charge(int t,int m)
{
? ? float sum; ?//打車費
? ? const float p = 2.3; ?//單價
? ? const float q = 13; //起步價
? ? if(m <= 3) ?//判斷距離m<=3時的2種情況。
? ??
? ? {
? ? ? ? if(5<t || t<23)
? ??
? ? ? ? { ? sum =q ;
? ? ? ? ? ? sum ++;
? ? ? ??
? ? ? ? ? ? return ?sum;
? ? ? ? }
? ? ? ? else
? ??
? ? ? ? { ? ?sum = q + m*0.2*p;
? ? ? ? ? ? sum ++;
? ? ? ? ? ? return sum;
? ? ? ? ? ??
? ? ? ? }
? ? }
? ? if(m >3) //判斷距離m>3時的2種情況。
? ? {
? ? ? ? if(5<t || t<23)
? ??
? ? ? ? { ? sum =q + p * (m-3);
? ? ? ? ? ? sum ++;
? ? ? ? ? ? return ?sum;
? ? ? ? }
? ? ? ? else
? ??
? ? ? ? { ? ?sum = q + p * (m-3) + ?p * 0.2 * m;
? ? ? ? ? ? sum ++;
? ? ? ? ? ? return sum;
? ? ? ? } ? ? ??
? ? ? ? ? ??
? ? } ?
? ? ? ?
}
int main()
{
? ? int x = 9;
? ? int y = 6;
? ? int z = 12;
? ? float am = Charge(x,z);
? ? float pm = Charge(y,z);
? ? float money = am + pm;
? ? printf("小明每天的打車的總費用是:%.2f\n",money);
? ? return 0;
}
這是寫的,上面有注視,理解了倒不是很難,希望能幫助你!?。?/p>
2016-04-19
再沒得到你的回答之前,我用了兩天找到了這個錯誤