What are the Pokemon CP range for each trainer level?
Solution 1:
My data isn't complete as I haven't been actively keeping track, but here is what Iv'e found. Once you reach max CP for any Pokemon at your level, every subsequent level allows you to power up said Pokemon twice. Each power up grants 20-60(level 4-16) CP based off of the Pokemon's initial power and player level. My Lapras maxed out at 971 at level 11, 1056 at level 12, ~1140 (forgot screenshot) at level 13 and 1267 at level 14. +85, +~90, +~120. I have since run out of Lapras candies so i can't pursue this information further until i obtain more. I'll attempt to gather more data using a more common Pokemon later (Eevee evolution probably) and edit when i can, but the stardust needed is hard to maintain.
How this relates to the question:
The encounter CP is a random number between lowest possible (10 in 1st evolution) and maximum possible. From the data we can see that the max CP does increase incrementally so as a result encounter CP will increase at the same rate.
In conclusion, while it is more effective to power up and evolve Pokemon later, the max CP increase seems to be mild enough that from level to level the difference isn't insurmountable.
Solution 2:
Yes, the CP of Pokemon you encounter is completely based on your trainer level.
The maximum trainer level cap is 30, i.e. after 30th level, the Pokemon you'll encounter will have the same CP range of the Pokemons that you encountered when you were at level 30.
To answer you question, there's still no exact data mined out about CP of Pokemons after decoding the game files; so, it's still hard to say what exact range of CP Pokemons will you encounter at particular levels. The only thing confirmed is, Pokemon's CP range heavily depends upon trainer's level.