Android is basically an open-source operating system. When you say open-source, you can develop and market apps without any license.
For developing android apps, we usually use either eclipse or Android Studio software. You need to have hands-on knowledge of Java and preferably XML. If you're developing apps based on Java, you can create SDK apps which are highly marketed by google. However, you can build apps using C/C++ but you will be developing NDK apps.
If I have to recommend, i can say you develop SDK apps using Android Studio. Android Studio is free and can be downloaded from Android site which runs on all latest operating system(Windows and Mac). They also have a tutorial site where you can learn how to build apps. I would recommend you have a knowledge on java and xml.
Now, why do you need to develop apps. Its simple. They are free and many people build their own revenue by selling apps. You can create apps with ideas of your own, and can sell them on Google Store. If your app is good enough, you can make a decent revenue out of your apps.