This
answer is quite simple: there was no credible alternative. Bolsonaro is pretty
controversial because of all his odd remarks over his years in parliament. But
exactly those antics have worked on his behalf, they have proven that he is
honest and doesn’t care too much about public opinion. It was exactly this
sometimes almost brutal honesty that always got him reelected to congress.
Secondly
he doesn’t really represent any political party. He represents,
though somewhat imperfect, an institution that Brazilians still trust, the
military, which in turn represents order, disaster relief and peace troops like
those in Haiti and Rio de Janeiro. Brazilians are not afraid of their military
any more than Austrians are, not even the armed criminal groups in Rio de
Janeiro. An exception might be some left extremists.
In
order to really understand what led Brazilians to vote for Bolsonaro you have
to understand the sheer magnitude of the problems the Brazilians are facing.