题目描述:2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费。同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5角为单位:尾数小于0.25元的舍去、不小于0.25元且小于0.75元的计为0.5元、不小于0.75元的进为1元。编写一个函数,计算退票费,假定退票时间举例开车时间在48小时以上。函数原型如下:
double CancelFee(double price);
输入:输入一个实数,表示火车票票面价格。
输出:输出一个实数,表示退票费,结果保留一位小数。

样例输入
106
样例输出
5.5

思路:使用modf()函数分离浮点数的整数和小数部分。

C语言 modf() 函数用来提取双精度浮点数的小数部分和整数。
double modf(double x, double *intptr) 将提取浮点数 x 的整数部分和小数部分,整数部分被存入参数 intptr 中,小数部分被放入返回值中。
头文件:math.h
语法/原型:double modf(double x, double *intptr);
参数说明:
    x:要被计算的浮点数;
    intptr:一个指向整数部分的指针。
返回值:x 的小数部分。

学习链接:C语言modf()函数:提取浮点数的小数和整数部分

代码:

#include<stdio.h>
#include <math.h>
double CancelFee(double price);
int main(){double price;scanf("%lf",&price);printf("%.1lf",CancelFee(price));
}
double CancelFee(double price){double fee=price*0.05,intpart;double fractpart=modf(fee,&intpart);//用modf()提取整数部分和小数部分 if(fractpart<0.25) return intpart;else if(fractpart<0.75) return intpart+0.5;else return intpart+1;
}
//http://c.biancheng.net/c/modf.html

运行结果:

笔者水平有限,不到之处,还望诸位批评指正。

C:1102火车票退票费计算(函数专题)相关推荐

  1. ZZULIOJ.1102: 火车票退票费计算(函数专题)

    1102: 火车票退票费计算(函数专题) 题目描述 2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费.同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5 ...

  2. 1102: 火车票退票费计算(函数专题)C语言

    1102: 火车票退票费计算(函数专题) 时间限制: 1 Sec 内存限制: 128 MB 提交: 23406 解决: 7155 [状态] [讨论版] [提交] [命题人:admin] 题目描述 20 ...

  3. 1102: 火车票退票费计算(函数专题)Java

    1102: 火车票退票费计算(函数专题) 时间限制: 1 Sec 内存限制: 128 MB 提交: 23444 解决: 7167 [状态] [讨论版] [提交] [命题人:admin] 题目描述 20 ...

  4. 1102: 火车票退票费计算(函数专题)Python

    1102: 火车票退票费计算(函数专题) 时间限制: 1 Sec 内存限制: 128 MB 提交: 23442 解决: 7166 [状态] [讨论版] [提交] [命题人:admin] 题目描述 20 ...

  5. 1102: 火车票退票费计算(函数专题)--python

    1102: 火车票退票费计算(函数专题)–python 题目描述: 2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费.同时,车票退票费的计算方法不再四舍五入到元 ...

  6. 【ZZULIOJ】1102: 火车票退票费计算(函数专题)

    ZZULIOJ题解 1102: 火车票退票费计算(函数专题) 题目描述 2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费.同时,车票退票费的计算方法不再四舍五入 ...

  7. ZZULIOJ 1102: 火车票退票费计算(函数专题),Java

    1102: 火车票退票费计算(函数专题) import java.util.Scanner; public class Main {public static void main(String[] a ...

  8. ZZULIOJ 1102: 火车票退票费计算(函数专题)

    火车票退票费计算(函数专题) 题目描述 2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费.同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5角为单位:尾 ...

  9. 1102: 火车票退票费计算(函数专题)

    题目描述 2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费.同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5角为单位:尾数小于0.25元的舍去.不小于 ...

最新文章

  1. 查看存储过程死锁的存储过程
  2. python获取系统信息模块psutil
  3. vue设置页面标题title
  4. python的自带数据集_Python的Sklearn库中的数据集
  5. 如何查看windows xp系统的位数?
  6. 李楠评华为Mate X/小米MIX Alpha:适合土豪做非主力手机用
  7. Android Glide数据更新及内存缓存、硬盘缓存清理
  8. [20150831]中文符号在sql语句.txt
  9. mysql 慢_MySQL很慢... 怎么破??-阿里云开发者社区
  10. qstring转string
  11. 190223每日一句
  12. Word批量打印软件/工具
  13. 闲聊人工智能产品经理(AIPM)—人工智能产品体系
  14. 在光与影中用对白塑造灵魂
  15. rounded-{0 | top | right | bottom | left | circle } 边角半径设置 - bootStrap4常用CSS笔记(2019-05-16 09:38)...
  16. android 程序数据目录,Android APP 数据存放目录
  17. Kubeadm搭建高可用K8S(四)Dashboard安装配置
  18. Jexl表达式引擎(2)
  19. oracle计算6的阶乘,oracle 求阶乘
  20. 自己动手搞个印象笔记桌面版

热门文章

  1. 网络安全等保定级_信息安全技术网络安全等级保护定级指南发布,2020年11月1日正式实施!...
  2. 管理者如何提高自身管理能力?
  3. c语言质变量变,量变和质变的根本区别是( )
  4. 光的偏振(Polarization of light)
  5. css html5 中文,盘点5个典型的CSS3文字特效
  6. oracle获取当前时间的前24小时的整点的时间段
  7. 移动IP研究之分享几个代理服务器
  8. excel服务器系统怎么登录,Excel Server Tutorial
  9. matlab ob,Matlab 飞机航向INS仿真
  10. 十二个小球,一个坏球,3次比较找出坏的那个