lolipop漫
2015-07-19 23:57
#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",money);
return 0;
}/*In function 'cost':
error: expected ';' before '{' token
warning: no newline at end of file这是出错的地方我也不懂哪里错了*/
对了还有else是不能用来判断的,他是否则的意思,应该写成这样:
…………
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; }
…………
你#include后面为什么要加空格呢,哪个老师教你的
if多重结构只要根据逻辑顺序写或嵌套一般都没有问题,关于float result首先你在代码中出现了很多次,其次你在if-else语句中定义的result的作用范围并不到return result;这里~,所以应该在函数一开始就定义这个变量。不知道解释得清不清楚= =
我知道原因了,首先要把第二个else改成if,第二个if改成else。然后把int cost,改成float,不然会变成整数型,然后输出68.。同时在开头阶段添加float result,定义变量。来个人说明下,if多重结构,else和if顺序错会出错吗,还有为什么要定义float result;
C语言入门
926027 学习 · 20793 问题
相似问题