12. (10 points) Suppose in a certain year, a month has three Sundays that fall on odd dates. What day of the week could the 21st of this month be?
【Analysis】Let the first Sunday of this month be the $a$-th day $(1 \leqslant a \leqslant 7)$, then the dates of Sundays in this month are $7 k+a$, where $k$ is an integer, and $7 k+a \leqslant 31$. We need to have three odd numbers. Then, we discuss the cases when $a=1$, when $a=2$, when $a=3$, and when $4 \leqslant a \leqslant 7$, and provide the answer.

【Solution】Solution: Let the first Sunday of this month be the $a$-th day $(1 \leqslant a \leqslant 7)$, then the dates of Sundays in this month are $7 k+a$, where $k$ is an integer, and $7 k+a \leqslant 31$.

When $a=1$, to make $7 k+1$ an odd number, $k$ must be even, i.e., $k$ can take the values $0,2,4$. In this case, $7 k+a=7 k+1$ are $1,15,29$, and the 21st is a Saturday. When $a=2$, to make $7 k+2$ an odd number, $k$ must be odd, i.e., $k$ can take the values $1,3$. In this case, $7 k+2$ cannot have three odd numbers.

When $a=3$, to make $7 k+3$ an odd number, $k$ must be even, i.e., $k$ can take the values $0,2,4$. In this case, $7 k+a=7 k+3$ are $3,17,31$, and the 21st is a Thursday. When $4 \leqslant a \leqslant 7$, $7 k+a$ cannot have three odd numbers.

Therefore, the answer is: 4 or 6.