Home / C Programming / Floating Point Issues :: Discussion

Discussion :: Floating Point Issues

  1. What will be the output of the program?

    #include
     int main() 
     {   
        float d=2.25;  
        printf("%e,", d);     
        printf("%f,", d);     
        printf("%g,", d);     
        printf("%lf", d);  
        return 0; 
     } 
    

  2. A.

    2.2, 2.50, 2.50, 2.5

    B.

    2.2e, 2.25f, 2.00, 2.25

    C.

    2.250000e+000, 2.250000, 2.25, 2.250000

    D.

    Error

    View Answer

    Workspace

    Answer : Option C

    Explanation :

    printf("%e,", d); Here '%e' specifies the "Scientific Notation" format. So, it prints the 2.25 as 2.250000e+000.

    printf("%f,", d); Here '%f' specifies the "Decimal Floating Point" format. So, it prints the 2.25 as 2.250000.

    printf("%g,", d); Here '%g' "Use the shorter of %e or %f". So, it prints the 2.25 as 2.25.

    printf("%lf,", d); Here '%lf' specifies the "Long Double" format. So, it prints the 2.25 as 2.250000.


Be The First To Comment