博客主页:PH_modest的博客主页
当前专栏:每日一题
其他专栏:
每日反刍
读书笔记
C语言跬步积累
座右铭:广积粮,缓称王!
一.题目描述
描述:
KiKi非常喜欢网购,在一家店铺他看中了一件衣服,他了解到,如果今天是“双11”(11月11日)则这件衣服打7折,“双12” (12月12日)则这件衣服打8折,如果有优惠券可以额外减50元(优惠券只能在双11或双12使用),求KiKi最终所花的钱数。
数据范围:衣服价格满足 1≤val≤100000
输入描述:
一行,四个数字,第一个数表示小明看中的衣服价格,第二和第三个整数分别表示当天的月份、当天的日期、第四个整数表示是否有优惠券(有优惠券用1表示,无优惠券用0表示)。 注:输入日期保证只有“双11”和“双12”。
输出描述:
一行,小明实际花的钱数(保留两位小数)。(提示:不要指望商家倒找你钱)
示例1
输入:
1000.0 11 11 1
输出:
650.00
示例2
输入:
66.6 11 11 1
输出:
0.00
二.思路分析
这一题思路很清晰,但想一次性做对并不容易,有很多细节需要考虑到:
1.最后付款的金额应该大于等于0
2.如果付款金额等于0,输出格式应该是0.00,保留两位有效数字
三.代码展示
#include int main(){ float price=0; int month=0; int day=0; int coupon=0;//是否使用优惠券 float cost=0; scanf("%f %d %d %d",&price,&month,&day,&coupon); if(month==11&&day==11) { cost=price*0.7-50*coupon;//关于是否使用优惠券不需要再写一个判断语句,可以巧妙地使用对应的数字 if(cost>0) { printf("%.2f\n",cost); } else { { printf("0.00\n");//是0.00,不能心急写成0 } } } else if(month==12&&day==12) { cost=price*0.8-50*coupon; if(cost>0) { printf("%.2f\n",cost); } else { { printf("0.00\n"); } } } return 0;}
最后:
每日一题系列旨在养成刷题的习惯,所以对代码的解释并不会特别详细,但足够引导大家写出来,选的题目都不会特别难,但也不是特别简单,比较考验大家的基础和应用能力,我希望能够将这个系列一直写下去,也希望大家能够和我一起坚持每天写代码。
在这里送大家一句话:广积粮,缓称王!