用C语言编写一个计算箱子的空间重量的程序

情景引入:你是某运输公司的员工,公司最近发现有些又大又轻的箱子在运输中占据了宝贵的空间,于是提出对于这类箱子的收费按体积收费而不是按重量收费,公司规定用箱子的体积除以166(这是每磅允许的立方英寸数),如果除得的商(也就是箱子的空间重量)大于箱子的实际重量,那么运费就按空间重量来计算。(除以166是针对国际运输,国内运输除以194),但如果用人工来计算箱子的空间重量就显得耗时耗力,于是公司想要让人编写一个计算箱子空间重量的程序,你初学了C语言于是自告奋勇的接下了这分差事。

/*计算一个高为8,长为12,宽为10的箱子的空间重量*/
#include <stdio.h>

int main(viod)
{
    int height, lenght, width, volume, weight;
    
    height = 8;
    lenght = 12;
    width = 10;
    volume = (height * lenght * width);
    weight = (volume / 166);

    printf("Dimensions: %dx%dx%d\n", lenght, width, height);
    printf("Volume (cubic inches): %d\n", volume);
    printf("Dimensional weight (pounds): %d\n", weight);

    return 0;
}

这段程序的输出结果为:

Dimensions:12\times10\times8

Volume (cubic inches): 960

Dimensional weight (pounds): 5

这里的960为箱子的体积,5为箱子的空间重量

你拿着编写的程序给上司们检查,经过检查程序并没有错误,但却发现一个问题,就是程序计算的空间重量结果“5”是向下取整后的结果,而实际结果为5.7831...,你解释说在C语言中两个整数相除所得结果会被“截断”,小数点后的所有数字都会丢失。上司听后说那能不能往上取整,你说只要在除以166之前把体积加上165就可以,于是你改编了程序

#include <stdio.h>

int main(viod)
{
    int height, lenght, width, volume, weight;
    
    height = 8;
    lenght = 12;
    width = 10;
    volume = (height * lenght * width);
    weight = (volume + 165) / 166;

    printf("Dimensions: %dx%dx%d\n", lenght, width, height);
    printf("Volume (cubic inches): %d\n", volume);
    printf("Dimensional weight (pounds): %d\n", weight);

    return 0;
}

这段程序的输出结果为:

Dimensions:12\times10\times8

Volume (cubic inches): 960

Dimensional weight (pounds): 6

这里的960为箱子的体积,6为箱子的空间重量。

上司满意的笑了,你的C语言编写能力又得到了提高。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值