首页 文章

带有美元和季度的收银机以C输出

提问于
浏览
0

我必须设置一个收银机,其中有一个用户输入要支付的金额,它必须输出要支付的金额,然后输出支付金额所需的贷款数量,然后是支付金额所需的季度数量等等......我已经设法支付了要支付的金额以及截断支付金额所需的套数,但我不知道如何解决季度,硬币的数量,镍和便士需要支付 . 这是我的代码:

#include <stdio.h>
#include <math.h>

int main (void)

{
        double cost;
        int loonies, quarters;
        float loonreq;


        printf ("Please enter the amount to be paid: ");
        scanf ("%lf", &cost);

        printf ("Change Due: $ %.2f\n", cost);

        loonies = cost;
        printf ("Loonies required: %d, ", loonies);

        loonreq = cost - loonies;
        printf ("balance owing: $ %.2f\n", loonreq);

        return 0;
}

1 回答

  • 1

    干得好!

    #include <stdio.h>
    #include <math.h>
    
    int main (void)
    
    {
        double cost;
        int loonies, quarters, dimes, nickels, pennies;
        float loonreq;
        float balance;
    
    
        printf ("Please enter the amount to be paid: ");
        scanf ("%lf", &cost);
    
        printf ("Change Due: $ %.2f\n", cost);
    
        loonies = cost;
        printf ("Loonies required: %d, ", loonies);
    
        loonreq = cost - loonies;
        printf ("balance owing: $ %.2f\n", loonreq);
    
        quarters = (int)(((int)(100*loonreq))/25);
        printf("num quarters: %d \n",quarters);
        balance = loonreq - (quarters*.25);
        printf("balance owing: %.2f$ \n", balance);
        dimes = (int)(((int)(100*balance))/10);
        balance = balance - (dimes*.1);
        printf("num dimes: %d \n", dimes);
        printf("balance owing: %.2f$ \n", balance);
    
        nickels = (int)(((int)(100*balance))/5);
        printf("num nickels: %d \n", nickels);
        balance = balance - (nickels*.05);
        pennies = (int)(balance*100);
        printf("balance owing: %.2f$ \n", balance);
        printf("num pennies: %d \n", pennies);
    
    
        return 0;
    }
    

相关问题