You could set all the variables and values for each enemy as a struct (list) within an array called enemies.
If you check these two posts there are good explanations how to do that:
Okay, what do you mean? At the moment it reads like a game design question (which enemy and how many should spawn in each wave), which would be difficult to answer as it really depends on your idea for the game.
The alternative would be to randomize the selection. Did you try to do that?