Provavelmente foi isso que aconteceu, e você está certo quanto a posição dos pinos, eu comprei outro hoje pela manhã e agora está funcionando corretamente (VDD Vout GND), mas o datasheet do LM35DZ mostra (GND Vout VDD), pode checar no datasheet da national pg. 2 TO-92
Quanto ao código fonte, eu mudei algumas coisas para mostrar JAN,FEV... DOM,SEG... e sobre os cases que você usou no código quando o código é igual no C você pode usar assim:
case (op): case(op2): case (op3):
{ comandos }
Não precisa repetir a mesma coisa mudando a opção somente.
E por fim, add um teste ano bissexto e caso entre data 29/02 e não é bissexto vai para 01/03 automaticamente.
case (2): { if ((dia==29) && (ano%4!=0)) { dia=1; mes++; } if (dia>29) { dia=1; mes++; } break; }
Estava certo, pois uso uma fonte de modem 5V-1A