I want to learn C then C++ but first want an understanding of good practices in programming and why you write programs in a certain order. I have only written 1 program in Basic so I seriously need a beginner book. I know which C book to buy (K&R 2nd edition) but not there yet.