Go get a starter first.
if you mean in Pokemon diamond/pearl/platinum you need to get the national dex!
No.
in Pokemon soul silver catch it in route 36, route 37, and route 48. (Note that i don't know if it is the same for silver)
On route 34.
a pokewalker route.
in Pokemon soul silver you can find it at route 36 or route 35
Ditto is found at Route 34,Route 35 and Route 45
Headbutt trees on route 38
it is north of cerulean city
kecleon
in kanto at route 10
Route 45(Rare)