For propositional logic (especially truth tables and implication) I suggest Raymond's Smullyan's wonderful book, What is the name of this book?.
From memory: one example has a prosecutor in a court say to the defendant: 'If you committed the crime, then you must have had an accomplice'. The defendant hotly denies this. But $A \implies B$ is false only if $A$ is true, and $B$ is false, so his denial is also an admission of guilt.
Pirates (disjunctive/conjunctive normal form). Another puzzle I like has
five pirates, who want to padlock their treasure chest so that it can be opened if and only if (at least)
four of them are present. How many padlocks are needed?
Writing $p_i$ for the proposition 'Pirate $i$ is present',
the condition is
$$ (p_1 \wedge p_2 \wedge p_3 \wedge p_4) \vee (p_1 \wedge p_2 \wedge p_3 \wedge p_5) \vee \cdots \vee (p_2 \wedge p_3 \wedge p_4 \wedge p_5). $$
This holds if and only if no two pirates who are absent, so a logically equivalent condition is
$$ (p_1 \vee p_2) \wedge (p_1 \vee p_3) \wedge \cdots \wedge (p_4 \vee p_5) $$
in conjunctive normal form. The corresponding (minimal) solution puts 10 padlocks on the chest, labelled by
the $2$-subsets of $\{1,2,\ldots, 5\}$, and gives the keys to the padlock labelled $\{r,s\}$ to
pirates $r$ and $s$.