Leveling is pretty simple here, so here's the basic graph on the Experience Table:
Your Pokemon Level = 1-20. Amount of Experience Needed to Level = 1
Your Pokemon Level = 21-40. Amount of Experience Needed to Level = 2
Your Pokemon Level = 41-60. Amount of Experience Needed to Level = 3
Your Pokemon Level = 61-80. Amount of Experience Needed to Level = 4
Your Pokemon Level = 81-99. Amount of Experience Needed to Level = 5
So, basically, every 20 levels, your Pokemon needs One extra point to level. Simple.
Amount of Experience gained is respectful to the graph.
Defeated Pokemon Level = 1-20. Amount of Experience Gained = 1
Defeated Pokemon Level = 21-40. Amount of Experience Gained = 2
...And so on and so forth.
Now. If your level 20 Charmeleon beat a level 21 Ivysaur, Charmeleon would still gain 2 experience points, even though they are only a level a part.
Respectfully, if Ivysaur won the fight, she would only gain 1 experience point.