c# 我刚接触C语言,在函数计算方面遇到了困难

f5emj3cl  于 2023-02-20  发布在  C#
关注(0)|答案(2)|浏览(172)

基本上,我们有一个练习,创建一个函数,计算每月电费,其中第一个100000千瓦时将收取0.05,然后超过千瓦时将收取0.03我没有完成练习,并决定实践这个问题,但我卡住了。
函数声明为:

float computeTotalCharges(int usage, consumption);

在我的main方法中,我声明的变量是:

int qAircon, qFan, qTV, qRef, hAircon, hFan, hTV, hRef, usageHrs, kwh;
float monthlyCharges = 0;

到目前为止,我在函数中输入内容如下:

float computeTotalCharges(int usage, int consumption){
    
    float monthlyBill;
    
    monthlyBill = (consumption >= 100000) ? (100000 * 0.05) + ((consumption - 100000) * 0.03) 
                        : consumption * 0.05;
        
    return monthlyBill; 
}

我只知道如何计算,如果消费超过100k部分,但对于使用量和消费量的计算,我尝试了很多计算,但我不返回每月消费量和使用量的值。

eiee3dmh

eiee3dmh1#

作为初学者,避免使用“棘手”的速记表达式(当你获得更多经验时,你也会避免使用它们)。将表达式拆分成许多易于阅读和理解的逻辑行。编译器很可能会发出相同或甚至更好的代码。

double computeTotalCharges(double usage){
    
    double monthlyBill = 0.00;
    
    if(usage > 100000.0) 
    {
        monthlyBill += (usage - 100000.0) * 0.03;
        usage = 100000.0;
    }
    monthlyBill += usage * 0.05;
    return monthlyBill;
}
7gcisfzg

7gcisfzg2#

按如下所示修改您的函数

float computeTotalCharges(int usage, float consumption)
{

       float monthlyBill = 0;
       if(consumption > 100000)
       {
           monthlyBill =  (consumption - 100000) * 0.03;
           consumption = 100000;
       }    
       monthlyBill = monthlyBill + (consumption * 0.05);
    
      return monthlyBill; 
}

相关问题