Sei sulla pagina 1di 10

10

Cada case puede ejecutar mltiples lneas de cdigo. Todos deben terminan
con un break, que indica que debe seguirse la ejecucin del programa luego de
ejecutar las lneas superiores. La ejecucin contina luego de la estructura
switch. El caso default se ejecuta si no hubo coincidencia entre el contenido de
valor y los case superiores.
Sintaxis:
switch( variable ){
case valor1: accion1; (*)
case valor2: accion2; (*)
case valor3: accion3; (*)
...
case valorN: accionN; (*)
default: accionD; (**)
}
EJERCICIOS:
1.- Que pida un nmero del 1 al 7 y diga el da de la semana
correspondiente.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i;
printf("Introduzca nmero del 1 al 7:");
scanf("%d",&i);
switch(i){
case 1:
printf ("Lunes\n");
break;
case 2:
printf ("Martes\n");
break;
case 3:
printf ("Mircoles\n");
break;
case 4:
printf ("Jueves\n");
break;
case 5:

10

printf ("Viernes\n");
break;
case 6:
printf ("Sbado\n");
break;
case 7:
printf ("Domingo\n");
break;
default:
printf ("Opcin no vlida\n");
break;
}
system("PAUSE");
return 0;
}

2. -Que pida un nmero del 1 al 12 y diga el nombre del mes


correspondiente.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i;
printf("Introduzca nmero del 1 al 12:");
scanf("%d",&i);
switch(i){
case 1:
printf ("Enero\n");
break;
case 2:
printf ("Febrero\n");
break;
case 3:
printf ("Marzo\n");
break;
case 4:
printf ("Abril\n");
break;
case 5:
printf ("Mayo\n");
break;
case 6:
printf ("Junio\n");
break;
case 7:
printf ("Julio\n");

10

break;
case 8:
printf ("Agosto\n");
break;
case 9:
printf ("Septiembre\n");
break;
case 10:
printf ("Octubre\n");
break;
case 11:
printf ("Noviembre\n");
break;
case 12:
printf ("Diciembre\n");
break;
default:
printf ("Opcin no vlida\n");
break;
}
system("PAUSE");
return 0;
}

3.- Que pida una letra y detecte si es una vocal.


#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char c;
printf("Introduzca un carcter:");
scanf("%c",&c);
switch (c)
{
case 'a':
printf ("Es vocal\n");
break;
case 'e':
printf ("Es vocal\n");
break;
case 'i':
printf ("Es vocal\n");
break;
case 'o':

10

printf ("Es vocal\n");


break;
case 'u':
printf ("Es vocal\n");
break;
default:
printf ("No es vocal\n");
break;
}
system("PAUSE");
return 0;
}
4.- Crear un programa que calcule dos numeros y realize operaciones
basicas (+,x,/,-) utilizando el ciclo DO/WHILE, pero al final debe dar la
opcion de SALIR
int main(void)
{
char opcion;
float n1,n2,r;
do{printf("\ningrese el primer numero: ");
scanf("%f",&n1);
printf("\ningrese el segundo numero: ");
scanf("%f",&n2);
printf("\nMENU DE OPCIONES");
printf("\n1.SUMA\n2.RESTA\n3.MULTIPLICACION\n4.DIVISION\n5.SALIR ");
printf("\nESCOGA SU OPCION: ");
scanf("%s",&opcion);
switch(opcion){ case '1': {r=n1+n2;}
break;
case '2': {r=n1-n2;}
break;
case '3': {r=n1*n2;}
break;
case '4': {r=n1/n2;}
break;
case '5': {printf("salir");}
break;
default:printf("\nerror...opcion invalidada");
}
printf("el resultado de su opcion es: %.2f", r);
}while(opcion!=5);
getch();

10

}
5.- Se define la variable del tipo entero hijos, se le pide al usuario que
ingrese el nmero de hijos que posee y luego entra en accin la
estructura switch, actuando de diferentes formas dependiendo del
valor de la variable hijos en tiempo de ejecucin.
int hijos;
printf(Ingrese la cantidad de hijos que usted tiene:
);
scanf(%d, &hijos);
switch (hijos) {
case 0:
printf(No le corresponde asignacin familiar por hijo
);
break;
case 1:
printf(Le corresponden 50usd de asignacin familiar por su nico hijo
);
break;
case 2:
printf(Le corresponden 75usd de asignacin familiar por sus dos hijos
);
break;
default:
printf(Le corresponden 100usd de asignacin familiar por tener ms de dos
hijos
);
break;
};
6.- Realizar un programa en computadora que imprima un men y el
usuario seleccione que operacin aritmtica desea (suma s, resta r,
multiplicacin m, divisin d)
#include
#include
main()
{
int r,a,b;
char op;
printf(" menu principal");
printf(" \n\n s=suma r=resta");
printf("\n m=multipliaccion d=division");
printf("\n\n seleccione una opcion");
scanf("%s",& op);
printf("por favor inserte el valor de A= ");
scanf("%d", & a);

10

printf("inserte el valor de B= ");


scanf("%d", & b);
switch (op)
{
case 's': r=a+b;
if(a>b)
r=float(a+b);
else
r=float(b+a);
printf("la suma es: %d",r);
break;
case 'r': r=a-b;
if(a>b)
r=float(a-b);
else
r=float(b-a);
printf("la resta es : %d",r);
break;
case 'm': r=a*b;
if(a>b)
r=float(a*b);
else
r=float(b*a);
printf("la multiplicacion es: %d",r);
break;
case 'd': r=a/b;
if(a>b)
r=float(a/b);
else
r=float(b/a);
printf("la division es: %d",r);
break;
default: printf("no se realizo ninguna operacion");
}
getch();
}
7.-Programa que imprime los nmeros pares del 1 al 20 (FOR Y WHILE)
utilizando SWITCH-CASE
#include
#include
int i;
char op;
main()
{
printf("\n\n ***PROGRAMA QUE IMPRIME LOS NUMEROS PARES DEL 1 AL 20
(FOR Y WHILE) ***");
printf("\n\n ***MENU PRINCIPAL***");
printf("\n\n For---[f] While---[w]");
printf("\n Seleccione una opcion: ");

10

scanf("%s",&op);
switch(op)
{
case 'f':
for(i=0;i<=20;i+=2)
if (i%2==0)
printf("%d\n",i);
break;
case 'w':
i=0;
while(i<=20)
{
if (i%2==0)
printf("%d\n",i);
i+=2;
}
break;
default:printf("fuera de rango");
}
getch();
}
8.- Realizar un programa que lea un nmero en pies y calcule e imprima su
equivalente en yardas, pulgadas, centmetros O metros segn sea la opcin
que seleccione el usuario
1pie=12 pulgadas, 1yarda=3 pies, 1pulgada=2.54cm y 1metro=100cm.
#include
#include
main()
{
float R,p;
char op;
printf(" \n %%%%%%%%%%% ---- Menu para Convertir Pies.%%%%%%%%%%
%");
printf("\n\n P=Pie. U=Pulgada. C=Centimetros. ");
printf("\n\n Y=Yarda. M=Metros. ");
printf("\n\n Elija una Opcion: " );
scanf("%s",& op);
printf("\n\n\n Inserte la Cantidad de Pies que desee convertir: ");
scanf("%f",&p);
switch (op)
{
case 'p':R=p*1;
printf("\nLos Pies son:%f", R);
break;
case 'u':R=p*12 ;
printf("\nLas Pulgadas son:%f", R);
break;
case 'y':R=p/3;

10

printf("\nLas Yardas son:%f", R);


break;
case 'c':R=p*(12*2.54);
printf("\nLos Centimetros son:%f", R);
break;
case 'm':R=p*(12*2.54)/100;
printf("\nLos Metros son:%f", R);
break;
default:printf("\nNo se realizo ninguna operacion.");
}
getch();
}

Ciclo while (Mientras)


Concepto y ejemplos:
El Bucle while o bucle mientras es una estructura de la mayora de
los lenguajes de programacin estructurados cuyo propsito es repetir
un bloque de cdigo mientras una condicin se mantenga verdadera.
Condicin
La condicin ha de ser una sentencia que devuelva un valor booleano, y esta
puede ser el valor booleano en s, verdadero (true) si la condicin se cumple,
o falso si esta no se cumple (false). Tambin puede contener el nombre de
una variable booleana, y el valor de la expresin depender de su contenido.
Se debe tener en cuenta que adems de las variables tambin puede haber
llamadas a funciones que devuelvan un valor.

El ciclo while representa el esquema general de trabajo para todos los ciclos,
esto quiere decir que si se entiende claramente la lgica de funcionamiento de
este ciclo
se facilita entender no solo los otros ciclos. Es til saber que este ciclo tambin
es llamado en algunos libros el Ciclo Mientras Que.

Sintaxis:

10

La sintaxis de este ciclo en lenguaje C es la siguiente:

while (expresion_condicional)
{
...
instrucciones_del_cuerpo_del_ciclo
...
instrucciones_que_modifican_el_resultado_de_la_condicion
}

Su forma de ejecucin es muy sencilla: Mientras se cumpla que la condicin


sea Verdadera entonces se ejecutar el Cuerpo del Ciclo. De igual forma
tambin se podra decir
que el Cuerpo del Ciclo se repetir tantas veces como lo permita la condicin o
mientras dicha condicin sea Verdadera.

Ejemplos:
1) Escribir los nmeros impares comprendidos entre 1 y 100.

#include <stdio.h>

int main()
{
int vc;
vc=1;

10

while(vc<=100)
{
printf("\nImpar %d: %d",vc/2+1,vc);
vc=vc+2;
}
return(0);
}

2) Calcula la cantidad de numeros pares y impares.

#include<conio.h>
#include<iostream.h>
void main()
{
clrscr();
int N;
int P=0;
int I=0;

cout<<"Ingrese Numero:";
cin>>N;

10

Potrebbero piacerti anche