CCF NOI1010 邮寄包裹

来源:互联网 发布:做淘宝刷客的被骗经历 编辑:程序博客网 时间:2024/06/11 09:51

问题链接: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);    else        printf("Fail\n");    return 0;}



0 0
原创粉丝点击