亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求大佬解答 我哪里出錯了 結果是上班的費用是1703740 下班費用是1703724

求大佬解答 我哪里出錯了 結果是上班的費用是1703740 下班費用是1703724

C C++
安之4183388 2017-06-08 16:02:44
#include <stdio.h>int f(int time,int distance){??? double money;??? if(time>=5&&time <=23)????? if(distance<=3)????? money=13;????? else ????? money=13+2.3*(distance-3);??? else????? if(distance<=3)????? money=14;????? else????? money=14+2.3*1.2*(distance-3);?? return money;}int main(){??? int a,distances=12, time1=9,time2=18,b;??? a=f(time1,distances);??? printf("上班的車費是:%d\n",&a);?b=f(time2,distances);??? printf("下班的車費是:%d\n",&b);??? return 0;}
查看完整描述

2 回答

已采納
?
望遠

TA貢獻1017條經驗 獲得超1032個贊

#include?<stdio.h>
double?f(int?time,int?distance)//注意返回值類型,money是double類型,否則會損失精度
{
????double?money=0;
????if(time>=5&&time?<=23)
??????if(distance<=3)
????????money=13;
??????else
????????money=13+2.3*(distance-3);
????else
??????if(distance<=3)
????????money=14;
??????else
????????money=14+2.3*1.2*(distance-3);
???return?money;
}
int?main()
{
????int?distances=12,?time1=9,time2=18;
????double?a,b;//a,b應該定義為double類型
????a=f(time1,distances);
????printf("上班的車費是:%.3lf\n",a);//輸出數據,你原來輸出的是地址
????b=f(time2,distances);
????printf("下班的車費是:%.3lf\n",b);
????return?0;
}


查看完整回答
3 反對 回復 2017-06-08
?
qq_夢里_0

TA貢獻16條經驗 獲得超13個贊

沒看出來 我運行了好幾次結果都不一樣。建議你寫代碼的時候規范點,if else后面的語句用{}括起來

查看完整回答
1 反對 回復 2017-06-08
  • 2 回答
  • 0 關注
  • 1745 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號