gpt4 book ai didi

c - 编程风格和变量数量以及程序的正确公式以及在多种条件下测试程序

转载 作者:行者123 更新时间:2023-11-30 15:55:34 24 4
gpt4 key购买 nike

看代码

#include <stdio.h>

#define TAX 5 /* Defines percentage of tax for the year */

int main(void)
{
float amount;
float taxes;
float total;

printf("Enter the value of the amount: ");
scanf("%f", &amount);

taxes = (TAX / amount);
total = amount + taxes;

printf("The total amount is: $%.2f",total);
return 0;
}

这必须计算给定金额 5% 的利息,我将公式税替换为:税费=(税费/金额)* 100
但当我输入输入 i,e 数量小于 50 时,我得到愚蠢的毫无意义的输出,正确的公式是什么,为什么我不能弄清楚如何处理较小的输入,任何人都可以让我知道执行此操作的正确方法。

我还想问一下风格,我针对这个问题提出了程序,请告诉我什么样的程序更好,我应该最小化变量数量还是应该直接计算定义的TAX宏中的税值本身。

#include <stdio.h>

#define TAX (5 / amount) * 100 /* Defines percentage of tax for the year */

int main(void)
{
float amount;
float total;

printf("Enter the value of the amount: ");
scanf("%f", &amount);

total = amount + TAX

printf("The total amount is: $%.2f",total);
return 0;
}

看看这个

#include <stdio.h>

#define TAX 5 /* Defines percentage of tax for the year */

int main(void)
{
float amount;
float taxes;
float total;

printf("Enter the value of the amount: ");
scanf("%f", &amount);

taxes = (TAX / amount) * 100;
total = amount + taxes;

printf("The tax on your amount is: $%f",total);
return 0;
}

还有什么更好的方法来写这个,我应该如何得出一个公式,我仍然觉得它非常简单,我不知道为什么我搞砸了。我已经解决了KN King《Cprogramming》这本书上的很多练习题,实际上几乎90%,但是今天我想再次修改所有概念,然后我就卡在了这个东西上。

问题又是:一个计算给定金额利率的程序,给定利率是 5%,不难吧,尝试较小的金额值。

提前感谢所有提供建议和解决方案的人。

最佳答案

因此,您的公式的问题在于,为了计算税金,您应该将税率取为小数,然后乘以金额。因此,您需要取 5%,并将其除以 100,使其成为十进制数。

就风格而言,您的第一个示例是最具可读性的,其变量名称“讲述一个故事”并准确显示您正在做什么。不过,我会消除 tax 变量,除非您将它用于其他用途,因为实际上不需要它。第二个是“坏”的,因为它假设有一个名为amount的变量,如果您重用该宏(并且如果您不使用该宏,则该变量可能存在也可能不存在)不能重用它,为什么它首先是一个宏?)。您可以使用带有参数的宏,但是您应该将其称为 CALCULATE_TAX 或其他名称,这样就可以立即看出它正在计算某些内容,而不仅仅是一个常量。

无论如何,我会这样做:

#define TAX_RATE 0.05   /* Defines percentage of tax for the year as 5% (0.05) */

int main(void)
{
double amount;
double total;

// Get the amount, there should be some error checking on the input though:
printf("Enter the value of the amount: ");
scanf("%f", &amount);

// Calculate the total amount, with taxes and print it:
total = amount + TAX_RATE * amount;
printf("The total amount is: $%.2f",total);

return 0;
}

关于c - 编程风格和变量数量以及程序的正确公式以及在多种条件下测试程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12028327/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com