Serial.print() works just fine inside setup(). Just make sure it occurs after the Serial.begin().
Many Arduinos will reset when the Serial Monitor is opened, so you see the very first data printed with no delay. Others will not reset so you need some way of delaying the execution so that you can get the Serial Monitor connected. Have you heard of the delay() function?
I always use ints for pin numbers as some day I'm expecting to see an Arduino with more than 255 pins. If you think that day will never come and you think that it's important for this loop to execute as fast as possible with the least memory usage, then you can use byte.