What is this format specifier? - eviltoast

What is %.2f? Why is it not just %f? Is there some additional calculation happening? The half function already does all the calculations including splitting the bill, so I’m not sure what %.2f is. (Btw why is this code not formatting correctly in lemmy?)


#include 
#include 

float half(float bill, float tax, int tip);

int main(void)
{
    float bill_amount = get_float("Bill before tax and tip: ");
    float tax_percent = get_float("Sale Tax Percent: ");
    int tip_percent = get_int("Tip percent: ");

    printf("You will owe $%.2f each!\n", half(bill_amount, tax_percent, tip_percent));
}

// TODO: Complete the function
float half(float bill, float tax, int tip)
{
    bill += (bill * (tax / 100.0));
    bill += (bill * (tip / 100.0));

    bill /= 2;

    return bill;
}
  • abhibeckert@lemmy.world
    link
    fedilink
    arrow-up
    1
    arrow-down
    2
    ·
    edit-2
    1 year ago

    The confusion is you just provided sample code showing how "%.2f" works - you didn’t answer the question which was what does that sequence of characters actually mean? What does the % do. What does the . do. What does the 2 do. What does the f do.

    OP needs to know the answer to all of those.

    • JackbyDev@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      OP got the answer to those in another comment, I’m asking what part they need help understanding in this link. Also, I didn’t provide the link.

      Edit: Nevermind, I mistook the comment for being OP.