Cita: Los switch también pueden funcionar con cadenas. case 'A', case 'b' etc etc.
También podrías usar la siguiente estructura, que es usando el interrogante y los 2 puntos.Ejemplo:
isupper(c=getchar())? printf("\n Es mayuscula) : printf("\n No es mayuscula.");
Estas en un error. 'A' No es una cadena. Es simplemente una valor.
Una cadena como su nombre lo indica son varios elementes encadenados A-B-C...
Lo que tu mencionas como "estructura", no es estructura. Es una sentencia o instruccion. Finalmente es lo mismo que un if-else solito.
El switch case no soporta cadenas, solo valores numericos o un solo caracter(que en si es lo mismo). Y en realidad un switch-else es igualito a un if-else.
Espero que hayan servido las aclaraciones.
Saludos