Most guys come in and say the team just gave them a number, without giving them much choice, but some vets get consideration for favorite numbers, even if the younger guy has to give it up. Case by case basis.
Nill never liked the high numbers, a la 99, 66, etc., once saying it put the spotlight on individuals rather than the team. I guess he just likes traditional numbers, and doesn't feel like he has a big enough superstar to provide numbers that stand out. Segs has 91, but that was only because he is close to superstar status, and his 19 was taken.
Also, I think there are some general conventions, like goalies being either 1 or in the 30's, D being single digit,20's or 40's (Harley will have 55 and Zubov was 56, for example. Forwards being almost anything over 20. There are plenty of exceptions to the general rule, though.