The average consensus algorithm is a well known distributed process in which the nodes iteratively communicate with the nodes within their communication range in order to obtain an estimation of the global average. These repeated communications, when performed in a uniformly randomly deployed network, such as a Wireless Sensor Network, lead to several nodes consuming much more power than others, thus reducing the lifetime of the whole network. This paper proposes a fully distributed method that allows the network nodes to suitably decide which subset of communications provides the best performance during the consensus process in terms of convergence time and power efficiency. Our method simultaneously improves both the convergence of the consensus algorithm and the lifetime of the whole network. Moreover, as a benchmark, we propose a convex optimization problem whose results can be compared with those obtained by our distributed approach. Simulation results are presented to show the efficiency of our proposal, comparing our two methods with existing approaches in the related literature.