exercises from Learn C The Hard Way