从两个数组和一个计数整数C语言返回一个值

时间:2018-02-01 05:03:38

标签: c arrays parameters

int main()
{
    double dUnitPriceM[]={19.99, 50.50, 2.10};
    long lOrderQuantityM[] = {10, 2, 4};
    int iItemCount = 3;
    double dTotalCost;
    dTotalCost = calculateTotalCost(dUnitPriceM, lOrderQuantityM, iItemCount);
    printf("Total cost is %10.2lf\n", dTotalCost);
}
// code for calculateTotalCost function ??
double calculateTotalCost(double dUnitPriceM[], long lQuantityM[], 
int iItemCount)
{
}

我是编码C语言的初学者,我无法理解如何使用数组。我提出了创建伪代码的逻辑,但我无法对其进行编码。 我所知道的是,我必须从i = 1的值开始; as i< =项目计数,i ++。

然后给我分配UnitPriceM [0] * QuantityM [0]的结果,将它们递增到下一个数组,直到它达到最后一个值。然后将所有i的总和相加,例如,如果i1 = 100 + i2 = 120 + i3 = 45,则将它们作为总成本返回。

2 个答案:

答案 0 :(得分:1)

#include <stdio.h>
    double calculateTotalCost(double unitPrice[], long quantity[],int itemCount){
       int i;
       double totalCost=0.0;

       for(i=0;i<itemCount;i++){
           totalCost +=unitPrice[i] * quantity[i];
        }
        return totalCost;

    }
    void main() {
        int i;
        double dUnitPriceM[]={19.99, 50.50, 2.10};
        long lOrderQuantityM[] = {10, 2, 4};
        int iItemCount = 3;
        double totalCost =0.0;
        totalCost= calculateTotalCost(dUnitPriceM, lOrderQuantityM, iItemCount);
         printf("Total cost is %f ", totalCost);
    }

答案 1 :(得分:0)

这是循环所有并执行所需操作的基本逻辑。

double calculateTotalCost(double dUnitPriceM[], long lQuantityM[], 
int iItemCount)
{
    double sum=0;
    for(int i=0;i<iItemCount;i++)
    {
        sum=sum+dUnitPriceM[i]*lQuantityM[i];
    }
    return sum;
}