The printf function requires an exact match between the conversion specifier and the type of the argument. Otherwise the result is undefined, which means anything can happen (which usually is garbage output like you are experiencing).
The d conversion specifier expects an integer argument, but a, b and c are floats. To get the correct results you should use the f specifier, or convert the arguments to int. Like so:
Code:
printf("Integers (a,b) and quotient (c) are : %f,%f,%d \n", a,b, (int)c);
// or
printf("Integers (a,b) and quotient (c) are : %f,%f,%f \n", a,b, c);
Also note that the length modifier that usually precedes the conversion specifier (for instance the l in ld, for long) also results in undefined behaviour if not correctly matched with its argument:
Code:
int a = 10;
long b = 10;
printf("%ld", a); // undefined behavior; specifier doesn't match
printf("%ld", b); // correct
printf("%ld", (long)a) // correct; argument converted to long.