Diario de un programador día 79
Operadores de igualdad.
Esta clase será muy semejante a la
que se vio en java.
Los operadores utilizados en C son
los siguientes:
< menor que
> mayor que
<= menor o igual
>= mayor o igual
== igual a.
!= distinto a.
Instrucción IF
La sintaxis para esta instrucción es la que sigue:
if (condicion) {
instrucciones;
}
else{
instrucciones;
}
Ejemplo:
#include<stdio.h>
int main(void){
int
a,b;
printf("Ingresa el valor de a: ");
scanf("%d", &a);
printf("Ingresa el valor de b: ");
scanf("%d", &b);
if(a
> b){
printf("A
es mayor que B\n");
}
else{
printf("B es mayor que A\n");
}
return 0;
}
Lo que hace este código es simplemente solicitar dos
números. El primero solicita el valor de A y el segundo solicita el valor de B.
Luego, utilizando la instrucción IF se comprueba cuál es el mayor de ambos.
COMPARAR CADENAS
En C, no se pueden comparar cadenas utilizando el
operador == al igual como se hace con los números. Para poder comparar cadenas
en C, se puede utilizar la función strcmp.
Para utilizar strcmp se debe incorporar la cabecera string.h y su sintaxis es strcmp(cadena1,
cadena2). Esta función tiene tres valores de retorno. Si el retorno es menor a cero, significa que cadena1 es
menor a cadena2. Si el retorno es mayor
a cero, significa que cadena2 es menor que cadena1 y si el retorno es igual a cero, entonces ambas cadenas
son iguales.
Quizás esto suene un poco enredado, pero en resumidas
cuentas, lo principal que hay que saber es que si el resultado de la
comparación es igual a cero, entonces ambas cadenas son iguales. Ejemplo.
#include<stdio.h>
#include<string.h>
int main(void){
char
cadena1[] = "hola";
char cadena2[] = "hola";
if(strcmp(cadena1,cadena2) == 0){
printf("son iguales\n");
}
else{
printf("no son iguales\n");
}
return 0;
}
En la zona destacada en gris se puede ver el uso de la
función strcmp, la cual es utilizada por una instrucción if. Básicamente aquí
dice “Si cadena1 comparada con cadena2 es igual a cero...” mostrar en pantalla
“son iguales”. De lo contrario mostrar “no son iguales”. Independiente del
valor de retorno, en este caso solamente interesa saber que el valor sea igual
a cero para saber que ambas cadenas son iguales.
INSTRUCCION
SWITCH
Esta instrucción es como una alternativa a la
instrucción if y se usa principalmente cuando en un programa se tienen que
escoger entre varias opciones, como puede ser un menú. Entonces, para no tener
que insertar varias instrucciones if una tras otra, es que se utiliza esta
instrucción.
Su sintaxis es así:
variable = 1
switch
(variable){
case 1:
ejecutar instrucciones;
break;
case 2:
ejecutar instrucciones;
break;
default:
ejecutar instrucciones;
break;
}
Al igual que la instrucción IF, la instrucción switch
ejecutará una determinada acción en caso de que la variable sea verdadera o se
cumpla. En este caso se muestra que la variable vale 1, por lo tanto se
ejecutará el "case 1" conjuntamente con todas sus instrucciones.
Notar y no olvidar colocar los 2 puntos (:) al final de la instrucción
"case". Al final de cada bloque "case" se debe colocar la
instrucción "break", que sirve para salir de la instrucción switch.
Si no se coloca el break, se seguirán ejecutando todas las instrucciones case
que siguen a continuación, o sea el case 2, 3, etc. Más abajo aparece la
instrucción "default". Esta se ejecutará en caso que la variable sea
distinta a todos los otros case. Por ejemplo, si tengo un menú con tres
opciones, algo así:
opcion 1
opcion 2
opcion 3
Y le pido al
usuario que ingrese el nombre de alguna opción. En caso de que el usuario
ingrese una opción que no corresponde, yo puedo indicar mediante la instrucción
"default" que la opción ingresada no existe o no es válida. Funciona de manera similar a la instrucción
"else".
Ejemplo:
#include<stdio.h>
int main(void){
int opcion;
printf("Opcion1\nOpcion2\nOpcion3\n\n");
printf("Ingresa una opcion: ");
scanf("%d", &opcion);
switch(opcion){
case 1:
printf("Has ingresado en la opcion
1\n");
break;
case 2:
printf("Has ingresado en la opcion 2\n");
break;
case 3:
printf("Has ingresado en la opcion
3\n");
break;
default:
printf("La opcion no es
valida\n");
break;
}//fin
switch
return 0;
}
Espero que se
entienda y si hay dudas sobre la instrucción IF, siempre se puede revisar el
apartado de small basic, donde di una introducción más detallada. No lo hago
porque se es materia ya enseñada y sería volver a repetir lo mismo. Como he
dicho, la idea es simplemente mostrar la sintaxis y si hay algo nuevo, entonces
lo explicaré lo más detallado posible. Hasta la próxima.
Gustavo J. Cerda Nilo
No hay comentarios:
Publicar un comentario