选择题的判定
受疫情的影响,20202020 年蓝桥杯大赛青少年创意编程 C++ 组的省赛在网上进行。选择题有 55 道,都是单选题,每道 3030 分,共计 150150 分。每道选择题选对得 3030 分,选错或者不选得 00 分。
注意以下仅为假设,不代表本场考试选择题的真实答案,仅是针对本编程题假设出的答案。
假设正确的答案为 "DCBAD",那么你能根据选手的提交情况,判定选手的选择题总分吗?选手提交一个由5个字符组成的字符串,代表选手的选项。字符串仅能包含如下 55 种字符:"D"、"C"、"B"、"A"、"E"。其中 "A"、"B"、"C"、"D" 代表选手选择了某个选项,而 "E" 代表选手未做该题。
#include<bits/stdc++.h>
using namespace std; int main()
{
char a,b,c,d,e;
int w=0; cin>>a>>b>>c>>d>>e;
if(a=='D') { w=w+30; }
if(b=='C') { w=w+30; }
if(c=='B') { w=w+30; }
if(d=='A') { w=w+30; }
if(e=='D') { w=w+30; }
cout <<w;
return 0; }
以及包裹邮寄问题
蒜邮局对邮寄包裹有如下规定:若包裹的重量超过 3030 千克,不予邮寄,对可以邮寄的包裹每件收手续费 0.20.2 元,再根据下表按重量 xx 分阶段计算的结果:
重量(千克) | 收费标准(元/公斤) |
---|---|
x \le 10x≤10 | 0.80 |
10 < x \le 2010<x≤20 | 0.75 |
20 < x \le 3020<x≤30 | 0.70 |
请你编写一个程序,输入包裹重量,输出所需费用或"Fail"
表示无法邮寄。
例如 x = 12x=12,需要手续费 0.20.2 元,前 1010 公斤需要花费 10 \times 0.8 = 810×0.8=8 元,还剩下 22 公斤需要花费 2 \times 0.75 = 1.52×0.75=1.5,所以需要的费用为:0.2 + 8 + 1.5 = 9.70.2+8+1.5=9.7 元。
输入格式
输入一个正整数 xx,表示邮寄包裹的重量。
输出格式
输出对应的费用(答案保留 22 位小数)或"Fail"
表示无法邮寄。
数据范围
0 < x \le 1000<x≤100 。
#include<bits/stdc++.h>
using namespace std;
int main()
{
double x;
cin>>x; if(x>30)
{ printf("Fail"); }
else if(x>20)
{ printf("%.2f",8+7.5+(x-20)*0.7+0.2); }
else if(x>10)
{ printf("%.2f",8+(x-10)*0.75+0.2); }
else { printf("%.2f",x*0.8+0.2); }
return 0;
}