求學(xué)霸幫忙看看吧,不知道是標(biāo)點(diǎn),還是括號(hào)原因無法運(yùn)算啊
#include <stdio.h>
int cost(int a,int b)
{ ? if(3>=b>0){
? float result=14;}
else(5>a||a>=23)
? ? {float result=14+2.3*(b-3)*1.2;?}if(23>a>=5)
? ? {?float result=14+2.3*(b-3);?}
? ? return result;?}
int main()
{?float money=cost(9,12)+cost(18,12);
? ? printf("小明每天打車的總費(fèi)用:%f",money);
? ? return 0;
}/*In function 'cost':
?error: expected ';' before '{' token
?warning: no newline at end of file這是出錯(cuò)的地方我也不懂哪里錯(cuò)了*/
2015-07-20
對(duì)了還有else是不能用來判斷的,他是否則的意思,應(yīng)該寫成這樣:
…………
else
if(5>a||a>=23)
? ? {float result=14+2.3*(b-3)*1.2;?}
if(23>a>=5)
? ? {?float result=14+2.3*(b-3);?}
? ? return result;?}
…………
2015-07-20
你#include后面為什么要加空格呢,哪個(gè)老師教你的
2015-07-20
if多重結(jié)構(gòu)只要根據(jù)邏輯順序?qū)懟蚯短滓话愣紱]有問題,關(guān)于float result首先你在代碼中出現(xiàn)了很多次,其次你在if-else語句中定義的result的作用范圍并不到return result;這里~,所以應(yīng)該在函數(shù)一開始就定義這個(gè)變量。不知道解釋得清不清楚= =
2015-07-20
我知道原因了,首先要把第二個(gè)else改成if,第二個(gè)if改成else。然后把int cost,改成float,不然會(huì)變成整數(shù)型,然后輸出68.。同時(shí)在開頭階段添加float result,定義變量。來個(gè)人說明下,if多重結(jié)構(gòu),else和if順序錯(cuò)會(huì)出錯(cuò)嗎,還有為什么要定義float result;