concuerdo con shell root. por mas que else if sea lo mismo que switch en algun punto, es mucho mas conveniente y claro usar switch.
Por ejemplo...
vos pones:
switch (var){
case 1:{
sentencia
break;
}
case 2:{
sentencia
break;
}
default:{
sentencia
break;
}
}
Un ejemplo de como usarlo seria:
int main(){
int x;
switch (x){
case 1:{
int func1(x);
break;
}
case 2:{
int func2(x);
break;
}
case 1992:{
int func3(x);
break;
}
default:{
return 0;
}
}
}
ahi lo que diria es para el valor que le damos a x, switch se fija en el valor que tiene y si es 1, va a ir al caso 1, si es 2 va a ir al caso 2, si no es ninguno de los miles de casos que podes poner, al final se pone el default que seria la opcion en caso de que lo ingresador no haya sido especificada.
y dentro de los case, podes poner cualquier tipo de cosas, desde un llamado a una funcion hasta asignaciones o creaciones de nuevas variables, lo que quieras, dependiendo de lo que necesites.