Solution postée.
Voici la solution d'ephemere
1) Soit W un intervalle ouvert non vide de [0,1]. W est évidemment de cardinal non dénombrable.
Or, l'ensemble f^{-1}(]0,+00[)=f^{-1}(U_{n entier >0}]1/n,+00[)=U_{n entier >0}f^{-1}(]1/n;+00[) est dénombrable car toute union dénombrable d'ensembles finis est dénombrable.
Donc, un nombre non dénombrable d'élements x de W sont forcément tels que f(x) appartient à [0,+00[\]0,+00[={0}, c'est-à-dire tels que f(x)=0.
2) Soit x un point tel que f(x)=0. Pour montrer que la fonction f est continue en x, il suffit de prouver que pour tout E>0, il existe D>0 tel que tout point y de [0,1] appartenant aussi à l'intervalle ]x-D,x+D[ vérifie |f(y)-f(x)|<E, c'est-à-dire |f(y)|<E. Fixons donc E>0. Considérons l'ensemble f^{-1}([E,+00[). C'est ensemble est évidemment fini. Cela signifie que cet ensemble est fermé dans l'ensemble des réels euclidiens. L'ensemble {x} est compact. La distance entre un ensemble compact et un ensemble fermé est toujours réalisée dans l'ensemble des réels euclidiens. Soit D cette distance. Il est clair que D>0 car, comme f(x)=0, le nombre x n'appartient pas au fermé considéré. D ainsi défini convient donc pour vérifier que f est continu en x car si la distance euclidienne entre x et y est strictement inférieure à D, alors f(y) n'est pas dans [E,+00[ et est donc dans son complémentaire [0,E[.