系统计算用户输入所要付的款?

系统计算用户输入所要付的款,如果大于或等于菜品总价则扣除菜品总价后显示找零,如果小于菜品总价则输出显示“您的付款不足”

怎么计算呢?没有菜价啊,是不是还需要有菜单管理?顾客点菜管理?

参考

https://blog.csdn.net/WheneverLH/article/details/79075871

typedef struct _ITEM
{
  char name[20];
  float price;
}ITEM;

ITEM items[100];  //所有菜单
int sel[100] = {0};  //用户点餐
int n = 0;  //所有菜单数量

float calcprice()
{
  float price = 0;
  for(int i=0;i<n;i++)
  {
    if(sel[i] == 1)
      price += items[i].price;
  }
  return price;
}

void main()
{
  //录入菜单 n++
  //顾客点餐,sel数组对应选项设置为1
  printf("请输入付款金额:");
  float f;
  scanf("%f",&f);
  float price = calcprice();
  if(price > f)
    printf("您的付款不足\n");
  else if(price < f)
    printf("找零%.1f元\n",f-price);
  else
    printf("欢迎下次再来!\n");
}