Se non ricordo male in C lo switch accetta confronti solo su int e char... in alternativa esistono sempre gli if-else a cascata...
edit: anche long e short: http://programmazione.html.it/c/c_19.htm