if (tday<10)
{dt = 0 + tday * 100 + tmonth}
а зачем добавлять ноль в начале?
имелось ввиду, если делать сложение строк (а не чисел), тогда нужен был бы ноль, точнее даже не ноль как число а ноль как символ ('0')
if (tday<10)
{dt = '0'+tday + tmonth}
else
{dt = ''+tday + tmonth}
'' (два одинарных апострофа, а не кавычки) нужно для того, что бы dt был преобразован сразу к строковому типу.
но в этом случае в case нужно будет проверять не числа а строки: '2002', '2104', ...