1102: 火车票退票费计算(函数专题)
时间限制: 1 Sec 内存限制: 128 MB
提交: 651 解决: 719
[提交] [状态] [讨论版] [命题人:eilene]
题目描述
2013年起,火车票退票费比例下调:票面乘车站开车时间前48小时以上的按票价5%计退票费。同时,车票退票费的计算方法不再四舍五入到元为单位,而是以5角为单位:尾数小于0.25元的舍去、不小于0.25元且小于0.75元的计为0.5元、不小于0.75元的进为1元。编写一个函数,计算退票费,假定退票时间举例开车时间在48小时以上。函数原型如下:
double CancelFee(double price);
输入
输入一个实数,表示火车票票面价格。
输出
输出一个实数,表示退票费,结果保留一位小数。
样例输入 Copy
106
样例输出 Copy
5.5
#include<stdio.h>
double CancelFee(double price);
int main()
{
double m,n;
scanf("%lf",&m);
n=CancelFee(m);
printf("%.1f",n);
return 0;
}
double CancelFee(double price)
{
double a,b;
a=price*0.05;
b=a-(int)a;
if(b<0.25)
{
a=a-b;
}
else if(b>=0.25&&b<0.75)
{
a=a-b+0.5;
}
else
{
a=a-b+1.0;
}
return a;
}