> 文章列表 > 【每日一题】——网购

【每日一题】——网购

【每日一题】——网购

🌏博客主页: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 <stdio.h>
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;
}

最后:

每日一题系列旨在养成刷题的习惯,所以对代码的解释并不会特别详细,但足够引导大家写出来,选的题目都不会特别难,但也不是特别简单,比较考验大家的基础和应用能力,我希望能够将这个系列一直写下去,也希望大家能够和我一起坚持每天写代码。

在这里送大家一句话:广积粮,缓称王!