I am not sure why there are always so many svchosts, but I believe it is for reliability. If all of the core windows services were in one executable, and one component failed, then that would mean the entire operating system would blue screen and restart. Therefore, one would need to separate them. That way, if one component failed, the other ones would still be working, and the failed one might have a chance to restart.
Just a guess.
unsigned whatYouAreThinking = getch();
cout << "Did I Help You?" << endl;
if(whatYouAreThinking == 'y') cout << "Press Thanks" << endl;
else if(whatYouAreThinking == 'n') cout << "Thanks For Reading My Post" << endl;
else cout << "Think Again ;)" << endl;