We define a semantic notion of symmetry well-suited for networks of processes specified in Hoare's language CSP. Symmetric algorithms to find a leader in such networks are then studied. We show that the existence of such algorithms depends crucially on the network topology and on the use of input/output guards in processes. The election problem appears thus as a powerful criterion in assessing the expressive power of distributed programming languages like CSP.