Memory Allocation - Programming

Q1:

What will be the output of the program?
#include<stdio.h>
#include<stdlib.h>

int main()
{
    union test
    {
        int i;
        float f;
        char c;
    };
    union test *t;
    t = (union test *)malloc(sizeof(union test));
    t->f = 10.10f;
    printf('%f', t->f);
    return 0;
}

A 10

B Garbage value

C 10.100000

D Error

ANS:A - 10

No answer description is available. Let's discuss.