| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2420 人关注过本帖
标题:为啥%lf可以,%.1lf不行?
只看楼主 加入收藏
黑暗骑士5D
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2019-11-6
结帖率:100%
收藏
 问题点数:0 回复次数:7 
为啥%lf可以,%.1lf不行?
本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:

起步里程为3公里,起步费10元;
超起步里程后10公里内,每公里2元;
超过10公里以上的部分加收50%的回空补贴费,即每公里3元;
营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。
输入格式:
输入在一行中给出输入行驶里程(单位为公里,精确到小数点后1位)与等待时间(整数,单位为分钟),其间以空格分隔。

输出格式:
在一行中输出乘客应支付的车费(单位为元),结果四舍五入,保留到元。
输入样例1:
2.6 2
输出样例1:
10
输入样例2:
5.1 4
输出样例2:
14
输入样例3:
12.5 9
输出样例3:
34

int main()
 {
   double s;
   int t,m;
   scanf("%lf %d",&s,&t);
   if(s<=3.0)
   {m=10;}
   else if(s>3.0&&s<=10.0)
   {m=(int)10+(s-3)*2+0.5;}
   else
   {m=(int)10+7*2+(s-10)*3+0.5;}
   printf("%d",m+t/5*2);
   return 0;
 }
为什么把%lf换成%.1lf不行?

[此贴子已经被作者于2019-11-14 22:47编辑过]

搜索更多相关主题的帖子: 单位 输出 一行 int 输入 
2019-11-14 22:45
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
那你从哪本书上看到 scanf 中可以用 %.1lf 的呢?
2019-11-15 09:21
三尺冰
Rank: 2
等 级:论坛游民
帖 子:17
专家分:50
注 册:2019-10-22
收藏
得分:0 
不加小数点是可以的


天道酬勤,自强不息
2019-11-15 12:34
c鳌白
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:24
专家分:101
注 册:2019-11-10
收藏
得分:0 
回复 2楼 rjsp
我认为可以
2019-11-15 13:28
Ly_轮回
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-6-2
收藏
得分:0 
scanf只能控制长度不能控制精度
2019-11-15 17:57
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
收藏
得分:0 
用来定义格式化输出的,但这么写不正确。
%f是定义输出浮点数,并没有%1f这种格式。
数字1呢是指定所占列宽,但是一个浮点数怎么都不会只有1个列宽,所以定义没有意义。
2019-11-15 20:52
黑暗骑士5D
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2019-11-6
收藏
得分:0 
回复 2楼 rjsp
不是要保留1位小数吗?%lf是保留6位啊
2019-11-15 23:24
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
回复 7楼 黑暗骑士5D
你说的是printf,这里是scanf
2019-11-16 00:58
快速回复:为啥%lf可以,%.1lf不行?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039959 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved