I'd say go C first... The things you pick up when learning C can be translated to C++ relatively easily. Also C is a really small language. It will make you work with pointers, with memory allocation, and quite a few low-level functions. It is also really portable if you avoid using system calls.
As for between Java and Python...
I recommend Java because Java is a lot more popular, and a lot more ubiquitous... (Your C# knowledge would come in handy when learning it too.) It has a lot more real-world usage currently (I mean job-wise.) so knowing it would be an asset if you were to become a professional developer. But you could choose Python too if you want, but I can't really speak for Python since I don't know it.