The flocking of a multi-agent system with dynamic topology is investigated in this study. A switching control law is developed to achieve the flocking by adding the controls from some of type II uninformed agents to their closest informed agent including the non-linear relative velocity feedback. The multiple Lyapunov functions are then constructed and a stable analysis for the flocking is given based on the LaSalle invariance principle. It is proven that the energy is bounded at all time, and asymptotically converges to the state of minimum energy; the velocities of all the agents approach the velocity of the virtual leader asymptotically; no collision happens between the mobile agents. The effects of the number of informed agents and non-linear relative velocity feedbacks on the flocking are also investigated. It is shown that fewer informed agents in comparison with existing methods can guarantee stable flocking, which is very significant in some practical applications for secure communication.