Is it always true that an acid or base reacts with metals to give hydrogen gas?
1 Answer
I would hesitate to say it's always true...
Two examples that match your description for the reactants are:
(1)
#stackrel("metal")overbrace(2"Al"(s)) + stackrel("acid")overbrace(6"HCl"(aq)) -> stackrel("acid salt")overbrace(2"AlCl"_3(aq)) + stackrel("hydrogen gas")overbrace(3"H"_2(g))#
(2)
#stackrel("metal")overbrace("K"(s)) + stackrel("base")overbrace("NaOH"(aq)) -> stackrel("metal")overbrace("Na"(s)) + stackrel("base, not a salt")overbrace("KOH"(aq))# #larr# Nope, no hydrogen gas produced!
Well, I found a counterexample. So either you were unclear or I misunderstood you.
Let's say you meant that acid + metal produces hydrogen gas and one other product, and that strong acid + strong base gives a salt and water.
Okay, fine, those usually work. But a metal plus a base does not necessarily give hydrogen gas, as shown in the counterexample above.
Here's how I got the products. When an acid or base reacts with a metal, it will be a redox reaction (a single-replacement reaction, if you will...).
(1)
#2("Al"(s) -> "Al"^(3+)(aq) + cancel(3e^(-)))#
#3(2"H"^(+)(aq) + cancel(2e^(-)) -> "H"_2(g))#
#"----------------------------------------"#
#2"Al"(s) + 6"H"^(+)(aq) -> 2"Al"^(3+)(aq) + 3"H"_2(g)#
When you add back the
#color(blue)(2"Al"(s) + 6"HCl"(aq) -> 2"AlCl"_3(aq) + 3"H"_2(g))#
(2)
The base reaction is similar. The counterion is
#"K"(s) -> "K"^(+)(aq) + cancel(e^(-))#
#"Na"^(+)(aq) + cancel(e^(-)) -> "Na"(s)#
#"---------------------------------"#
#"K"(s) + "Na"^(+)(aq) -> "K"^(+)(aq) + "Na"(s)#
Or, adding back the counterion...
#color(blue)("K"(s) + "NaOH"(aq) -> "KOH"(aq) + "Na"(s))#