本文主要是介绍CCF NOI1010 邮寄包裹,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
时间限制: 1000 ms 空间限制: 262144 KB
题目描述
某邮局对邮寄包裹有如下规定:若包裹的重量超过30千克,不予邮寄,对可以邮寄的包裹每件收手续费0.2元,再加上根据下表按重量wei计算的结果:
重量(千克) 收费标准(元/公斤)
wei<=10 0.80
10<wei<=20 0.75
20<wei<=30 0.70
请你编写一个程序,输入包裹重量,输出所需费用或”Fail”表示无法邮寄。
输入
输入一个正整数,表示邮寄包裹的重量。
输出
输出对应的费用(答案保留2位小数)或“Fail”表示无法邮寄。
样例输入
7
样例输出
5.80
数据范围限制
问题分析
这是一个条件判定问题。
另外一种做法是,将原始数据放入数组中,程序逻辑将略有不同。
程序说明
使用嵌套的if语句,即if else if ...语句进行条件判定处理。
程序中,原始数据用符号变量定义。
要点详解
- 多分支的条件可以使用嵌套的if语句进行描述。
100分通过的C语言程序:
#include <stdio.h>#define RANGE1 10
#define RANGE2 20
#define RANGE3 30#define PRICE1 0.80
#define PRICE2 0.75
#define PRICE3 0.70#define FEE 0.20int main(void)
{int w;scanf("%d", &w);if(w <= RANGE1)printf("%.2f\n", FEE + w * PRICE1);else if( w <= RANGE2)printf("%.2f\n", FEE + RANGE1 * PRICE1 + (w - RANGE1) * PRICE2);else if( w <= RANGE3)printf("%.2f\n", FEE + RANGE1 * PRICE1 + (RANGE2 - RANGE1) * PRICE2+ (w - RANGE2) * PRICE3);elseprintf("Fail\n");return 0;
}
这篇关于CCF NOI1010 邮寄包裹的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!