题解 | #牛牛的快递#

牛牛的快递

https://www.nowcoder.com/practice/41b42e7b3c3547e3acf8e90c41d98270

 #include <stdio.h>

int main()

{

    float a;

    char b;

    int money;

    scanf("%f %c",&a,&b);

    if(a==(int)a)

/*a是浮点数,当a强转为int类型后,如果

相等,就代表着a的小数部分为0,否则

就要按照1kg标准计算价格*/

    money=20+(a-1);

    else

     money=20+(int)a;

/*说明此时的a要计算小数部分的价格

但是由于初始的1kg价格已在20块了,

所以后面的价格应该是(a-1)+小数部分的一块

前面减去的一块,与后面加上小数部分的一块

相互抵消,所以直接等于a的整数部分,

即为:20+(int)a */

     printf("%d\n",('y'==b) ?  money+5 : money);

    return 0;

}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务