一个题目不同的认知,便造成了答案的不同
#include<stdio.h>
int main(){
double kilometre,yuan1,yuan2;
int minute;
scanf("%lf %d",&m,&minute);
if(kilometre<=3)
{
yuan1=10;
}
else if(kilometre<=10)
{
yuan1=10+(kilometre-3)*2;
}
else
{
yuan1=30+(kilometre-10)*3; ||理所应当的认为十公里以下的最大付款为30,没有减去3公里内,十公里下的重复部分
}
yuan2=(minute/5)*2;
printf("%.0f\n",yuan1+yuan2);
return 0;
}
(错误)
#include<stdio.h>
int main(){
int minute;
double kilometre,money;
scanf("%lf %d",&kilometre,&minute);
if(kilometre<=3){
money=10+minute/5*2;
}
else if(kilometre>3&&kilometre<=10){
money=10+(kilometre-3)*2+minute/5*2;
}
else{
money=24+(kilometre-10)*3+minute/5*2;
}
printf("%.0f",money);
}
(正确)
可见理清思路的重要性,应细心。