I am visiting Zürich and I don't speak any German. I do speak though both English and French. Which one should I use to communicate with the locals? How about the rest of German-speaking Switzerland?
Which one should I use to communicate with the locals?
As of the December 2010 census, 69.3% of the population speaks diglossic Swiss German/Swiss Standard German as their mother-tongue at home. Some 22.7% of inhabitants speak Standard German in their family environment ("at home"). Dramatically increasing, according to the last census in 2000, 8.8% now speak English. Italian follows behind at 7.1% of the population, then French at 4.5%. https://en.wikipedia.org/wiki/Z%C3%BCrich#Languages
That read it seems to be more likely to successfully communicate in English than in French (which coincides with my experience).
How about the rest of German-speaking Switzerland?
I would say that the Zurich conclusion is applicable for the rest, except for the following regions
In the cantons of Bern, Fribourg and Valais, French is co-official; in the trilingual canton of Graubünden also Italian is. https://en.wikipedia.org/wiki/Languages_of_Switzerland#German
Switzerland is a multi-language land, and quite small, so it's a natural consequence that the foreign language skills are much higher than, for example, Germany. Starting from the fact, that 'Hochdeutsch' is de-facto foreign language which children have to learn.
Generally children in German-speaking Switzerland learn at least 2 foreign language, 1 Switzerland one (usually French) and 1 extra (usually English). But generally, English skill are much higher, even to the extend that many Swiss people will switch to English if you ask something in 'Hochdeutsch'.
Here in Switzerland switching between languages is something very natural, so you can start conversation in the language you are more comfortable with and switch to another if needed. It's nothing awkward with it here.
I often travel to Zurich as my fiance lives there- my german is still horrid but usually you can get by using English. Zurich is part of the german speaking section of switzerland, so you won't get by as well with French unless you travel closer to the french border. However, you can say merci to thank people, as it's common in Swiss-German! But yeah, most people speak english.