There are no contests in Pokemon Soul Silver. It was replaced by Pokeathlon which is located near National Park.
There aren't nessacarily "contests" on soulsilver and heartgold. But there are pokeathalons, which is right above goldenrod city.
it is above golden rod city go where the bug catching contests is then go left
Above Goldenrod city,walk into the room where thay tell you about the bug contests and go through the far left door. et
It depends on what you mean by "have Pokemon contests". If by that you mean to ask if you can battle with other people, then yes. However, if you mean contests as in single player, in-game contests, then no, there's no way to do that. You can, however, do that in Pokemon HeartGold/SoulSilver with the Pokeathlon minigames...
Let's see... Verdanturf Town has normal Pokemon contests. Fallarbor Town has super Pokemon contests. Slateport City has the hyper Pokemon contests Lilycove City has the master Pokemon contests. Also, if you can wait, I'd recommend only making pokeblocks with the people at the master contest hall. You get better quality pokeblocks that way. Good luck!
the Viridean Forest is close to Viriden City in pokemon soulsilver
In both diamond and pearl the one city is Hearthome
there is a game corner on Pokemon soulsilver in goldenrod city right above the Pokemon centre
Lilycove city is not in soulsilver the lottery is in goldenrod city in the radio tower.
There is no saffron city.
Violet City
Cianwood City