Hello
The best switch for the CCNA would be the 2950!But the 2900XL-EN is cheaper,the only problem is that a few commands are different.As far as the CCNP goes it best to have a level 3 switch.The prices for level 3 switches are quite expensive now.So it would be best to buy one when you start your CCNP in the future, certainly then the prices will be lower.
Regards