C++入门基础之计算使用某快递公司运输货物的运费

计算使用某快递公司运输货物的运费

问题描述:

编写程序,计算使用某快递公司运输货物的运费。
要求:
1)显示目的城市列表,通过输入需要选择城市。
2)输入货物重量。
3)根据运费价格表,来计算运费,其中首重费用为1kg以内的费用,超过1kg的部分每公斤使用续重费用计算。
4)1公斤内的总运费 = 首重费用
大于1公斤的总运费 = 首重费用 + (重量-1)*续重

在这里插入图片描述

效果图:
在这里插入图片描述

开发环境:

Dev C++

解题思路:

问题分析:输入选择的城市后通过表中数据计算出相关数值
解题思路:通过使用do-while语句提高程序的可持续性,用switch语句选择不同城市相关运费的变动,追加一个判断语句判断输入数字是否符合客观规律。
1.输出选择城市面板;
2.输入选择序号去选择目的城市;
3.根据运费价格表,来计算运费,其中首重费用为1kg以内的费用,超过1kg的部分每公斤使用续重费用计算。
4. 1公斤内的总运费 = 首重费用
大于1公斤的总运费 = 首重费用 + (重量-1)*续重
5.打出计算结果和全部信息

程序设计:

//某快递公司运输货物运费 
#include<iostream>
using namespace std;
int main()
{
	int a,b,money;
	int c;
	cout<<"-----计算运费------"<<'\n'
		<<"1.    广东省"<<endl
		<<"2.    江苏省"<<endl
		<<"3.    四川省"<<endl
		<<"4.    西藏" <<endl;
	do
	{	cout<<endl;
		do
		{  
	        cout<<"请选择目的城市<序号>:";
			cin>>a;	  
			c=0;                 //作为循环结束的条件并确保进行下一循环时c=0                        
			if(a<1 || a>4)
			{
			    c=1; 
				cout<<" the number is error"<<endl;   
			}                            //判断输入的a值是否在1到4之间 
	    }while(c==1);                    
		
		do
		{			                  
			cout<<"请输入货物的重量<公斤>:";
			cin>>b; 		                    
			c=0;                            
		    if(b<=0)
		    {
		    	c=1;
				cout<<" the number is error"<<endl;     //判断输入公斤数是否为正数 
			}
        }while(c==1);                            
		
		cout<<"--------输出--------"<<endl; 
		
		switch(a)
		{
			case 1:
				cout<<"你的送货城市为: 广东"<<'\n' 
					<<"货物重量: "<<b<<'\n'
					<<"首重:6  续重:1"<<endl;
				money=6+(b-1)*1;
				cout<<"总运费:"<<money;
				break; 
			case 2:
				cout<<"你的送货城市为: 江苏"<<'\n' 
					<<"货物重量: "<<b<<'\n'
					<<"首重:10  续重:8"<<endl;
				money=10+(b-1)*8;
				cout<<"总运费:"<<money;
				break; 
			case 3:
				cout<<"你的送货城市为: 四川"<<'\n' 
					<<"货物重量: "<<b<<'\n'
					<<"首重:15  续重:12"<<endl;
				money=15+(b-1)*12;
				cout<<"总运费:"<<money;
				break; 
			case 4:
				cout<<"你的送货城市为: 西藏"<<'\n' 
					<<"货物重量: "<<b<<'\n'
					<<"首重:22  续重:18"<<endl;
				money=22+(b-1)*18;
				cout<<"总运费:"<<money;
				break; 
//			default:cout<<"error"<<endl;
		}
				 		
	}while(c==0); 
	 
 } 

运行结果:

在这里插入图片描述

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叁佰_542586

天桥底下的穷屌丝和他の破鞋草席

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值