The condition a) appears to be a tautology and therefore true. The condition b) is a statement of fact about John which makes him subject to a); that is, b) declares John a bachelor, and a) states that all bachelors are unmarried.
Because c) presumes b) will always be the case, it is a fallacy of necessity. John, of course, is always free to stop being a bachelor, simply by getting married; if he does so, b) is no longer true and thus not subject to the tautology a). In this case, c) has unwarranted necessity by assuming, incorrectly, that John cannot stop being a bachelor. Formally speaking, this type of argument equivocates between the de dicto necessity of a) and the de re necessity of c). The argument is only valid if both a) and c) are construed de re. This, however, would undermine the argument, as a) is only a tautology de dicto--indeed, interpreted de re, it is false.