C'è la & di troppo. La printf si aspetta un int usando il marcatore %d. Se gli metti la & passi l'indirizzo di contatore, non contatore in se. Poiché la printf non modifica mai quanto gli viene passato, il compilatore ti avverte che hai fatto una svista nel passaggio del secondo parametro (contatore appunto).codice:printf("%d numero o 0 per calcolare: \n", &contatore);