为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我算的结果是69?

http://img1.sycdn.imooc.com//599ebeb20001c58d07820549.jpg难道不应该有小数吗?哪里出了问题啊?

正在回答

5 回答

不能是%d , 得是 %f

0 回复 有任何疑惑可以回复我~
#1

centrifugeSIW 提问者

非常感谢!
2017-08-26 回复 有任何疑惑可以回复我~

请问你第三行的{ 在哪结束的?

0 回复 有任何疑惑可以回复我~
#1

centrifugeSIW 提问者

我写错了,少写了}
2017-09-26 回复 有任何疑惑可以回复我~

貌似你这个时间有点问题,因为题目刚好不在23-次日5点,你的时间那里,貌似是没法同事满足那三个条件的

0 回复 有任何疑惑可以回复我~
#1

centrifugeSIW 提问者

我这个是满足的啊
2017-08-25 回复 有任何疑惑可以回复我~

这个是稍微改进了一下的。

#include <stdio.h>
int main()
{
 int Morning,Night,distance;
 float Pay,Pay1,Pay2,Rate1,Rate2;
 printf("请分别输入距离,早晨时间,晚上时间(24小时制)\n");
 scanf("%d",&distance);
 scanf("%d%d",&Morning,&Night);
 if(distance<=3)
 {
  Pay = (13+1)*2;
 }
 else
 {
  if((Morning>=23&&Morning<=24)||(Morning>=0&&Morning<5))
  {
   Rate1=1.2;
   Pay1=((13+(distance-3)*2.3)*Rate1)+1;      
  }
  else Pay1=((13+(distance-3)*2.3)+1);
 
  if((Night>=23&&Night<=24)||(Night>=0&&Night<=5))
  {
   Rate2=1.2;
   Pay2=((13+(distance-3)*2.3)*Rate2)+1;      
  }
  else Pay2=((13+(distance-3)*2.3))+1;
  Pay=Pay1+Pay2;
 } 
 printf("小明一天打车%f元,早上%d点打的,晚上%d点打的",Pay,Morning,Night);
 return 0;
}

0 回复 有任何疑惑可以回复我~

#include <stdio.h>
int main()
{
 int Morning,Night,distance,Rate1,Rate2;
 float Pay,Pay1,Pay2;
 distance = 12;
 Morning = 9,Night = 6+12;
 if(distance<=3)
 {
  Pay = (13+1)*2;
 }
 else
 {
  if(Morning>=23&&Morning<=24||(Morning>=0&&Morning<=5))
  {
   Rate1=1.2;
   Pay1=((13+(distance-3)*2.3)*Rate1)+1;      
  }
  else Pay1=((13+(distance-3)*2.3)+1);
 
  if(Night>=23&&Night<=24||(Night>=0&&Night<=5))
  {
   Rate2=1.2;
   Pay1=((13+(distance-3)*2.3)*Rate2)+1;      
  }
  else Pay2=((13+(distance-3)*2.3))+1;
 }
 printf("小明一天打车%f元",Pay1+Pay2);
 return 0;

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我算的结果是69?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号