(a) With "HCN"HCN
The "HCN"HCN adds across the α "C=O"C=O group to form a cyanohydrin.
underbrace("CH"_3"COCOOH")_color(red)("pyruvic acid") + "HCN" → underbrace("CH"_3"C(OH)(CN)COOH")_color(red)("pyruvic acid cyanohydrin")
(b) With "H"_2
This is the reduction of a ketone to an alcohol.
underbrace("CH"_3"COCOOH")_color(red)("pyruvic acid") + "H"_2 stackrelcolor(blue)("Pd"color(white)(m))(→) underbrace("CH"_3"CH(OH)COOH")_color(red)("lactic acid")
(c) With "CH"_3"CH"_2"OH"
This is a standard acid-catalyzed esterification.
underbrace("CH"_3"COCOOH")_color(red)("pyruvic acid") + underbrace("CH"_3"CH"_2"OH")_color(red)("ethanol") stackrelcolor(blue)("H"^"+"color(white)(m))(⇌) underbrace("CH"_3"COCOOCH"_2"CH"_3)_color(red)("ethyl pyruvate") + "H"_2"O"