actual_payment实际支付计算程序

自己前段时间写了一个实用小程序,记录一下,欢迎指导交流。

程序介绍:当多人拼单时,依据各人预支付金额比例,计算出各人需支付服务费以及享受的优惠金额,最终得出各人实际支付金额。现在美团小程序上已经有了拼单功能,我的与它的算法应该是一致的。

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include<windows.h>

int main()
{
    int i,num=0;       //定义所需各变量
    float *money;
    float *actual_payment;
    float fee;
    float discount;
    float total=0;
    printf("请输入总人数:\n");
    scanf("%d",&num);
    money=new float;
    actual_payment=new float;
    printf("请输入每个人应付金额:\n");
    for(i=0;i<num;i++)        //计算预支付总金额
    {
        scanf("%f",money+i);
        total+=*(money+i);
    }
     printf("请输入总服务费\n");
     scanf("%f",&fee);
     printf("请输入优惠金额\n");
     scanf("%f",&discount);
     for(i=0;i<num;i++)        //最终计算,实际支付总金额/预支付总金额*个人预支付金额
     {
         *actual_payment=(total+fee-discount)/total*(*(money+i));
         printf("第%d个人实际付款%.2f元\n",i+1,*actual_payment);    //此处根据实际意义保留两位小数
     }
    free(money);
    free(actual_payment);
    system("pause");
    return 0;
}

后续可能会有改进,欢迎批评指导。

猜你喜欢

转载自blog.csdn.net/Joyce2018/article/details/83183876