对一批货物,不超过500公斤,按0.5元/公斤征税;对于超过500公斤的货物,其中500公斤按0.5元/公斤征税,其余超出部分按照0.8元/公斤征税。编写一个程序,输入货物重量,输出税额。如果结果为整数,则输出整数。如果结果不为整数,保留一位小数。用Dev-c++
时间: 2024-10-02 14:02:01 浏览: 6
为了实现这个需求,你可以使用C++编写一个简单的控制台应用程序。首先,你需要定义一个函数来计算税费,然后根据输入的货物重量调用该函数。以下是一个可能的实现:
```cpp
#include <iostream>
#include <iomanip>
// 函数定义,用于计算税费
double calculateTax(double weight) {
if (weight <= 500) {
return weight * 0.5; // 对于不超过500公斤的部分,税率0.5元/公斤
} else {
double taxOnFirst500 = 500 * 0.5;
double extraWeightTax = (weight - 500) * 0.8; // 超过500公斤部分,税率0.8元/公斤
return taxOnFirst500 + extraWeightTax;
}
}
int main() {
double weight;
std::cout << "请输入货物重量(公斤):";
std::cin >> weight;
// 计算税费并检查是否为整数
double tax = calculateTax(weight);
bool isIntegerTax = static_cast<int>(tax) == tax; // 使用静态转换判断
if (isIntegerTax) {
std::cout << "税费:" << static_cast<int>(tax) << "元" << std::endl;
} else {
std::cout << "税费:" << std::fixed << std::setprecision(1) << tax << "元" << std::endl;
}
return 0;
}
```
在这个程序中,我们首先读取用户的输入重量,然后根据条件计算税费。如果是整数,直接输出整数;如果不是整数,使用`std::fixed`设置精度为1位小数后输出。