运行后提示getCost()方法里面报错
方法少了个结束括号
else少了大括号,错误提示已经指出了,建议尽量不要使用if-else嵌套,可读性很差
把return放在getCost方法的大括号里 if else 外面即可
#include <stdio.h>float sum,lai,hui,cost;float getCost(int m,int n){ if(m>=5&&m<=23){ if(n<=3){ cost=13+1; }else{ cost=13+(n-3)*2.3+1; } }else{ if(n<=3){ cost=13+1; }else{ cost=13+(n-3)*2.3*1.2+1; } } return cost;}int main(){ lai = getCost(9,12); hui = getCost(18,12); sum = lai+hui; printf("cost is %f",sum); return 0;}
你的getCost方法只在else里有返回值,但在 if里面没有返回值所以这个方法会报错!!