// MenuC.cpp. // #include #include #include #include "stdafx.h" <stdlib.h> <windows.h> <conio.h> #define a 30 #define b 5 void clrscr(); void gotoxy(short x, short y); void limpiarBuffer(); char menuPrincipal(); char menuSecundario(); int _tmain(int argc, _TCHAR* argv[]){ char opcion; do{ opcion = menuPrincipal(); clrscr(); gotoxy(a, b); switch (opcion){ case '1': printf("Se ingreso la opcion 1"); Sleep(1000); break; case '2': printf("Se ingreso la opcion 2"); Sleep(1000); break; case '3': limpiarBuffer(); do{ opcion = menuSecundario(); clrscr(); gotoxy(a, b); switch (opcion){ case 'A': case 'a': printf("Se ingreso la opcion A"); Sleep(1000); break; case 'B': case 'b': printf("Se ingreso la opcion B"); Sleep(1000); break; case 'C': case 'c': printf("Se ingreso la opcion C"); Sleep(1000); break; case 'D': case 'd': printf("Fin de Consulta"); Sleep(1000); break; default: printf("Ingrese una opcion entre A y D"); Sleep(1000); break; } limpiarBuffer(); }while (opcion != 'D' && opcion != 'd'); break; case '4': printf("Se ingreso la opcion 4"); Sleep(1000); break; case '5': printf("FIN - Hasta luego \n"); Sleep(1000); default: printf("Ingrese una opcion entre 1 y 5"); Sleep(1000); break; } limpiarBuffer(); }while (opcion != '5'); return 0; } char menuPrincipal(){ char op; //inicia para las posiones clrscr(); gotoxy(a, b); printf("MENU"); gotoxy(a, b + 2); printf("1 - Agregar"); gotoxy(a, b + 3); printf("2 - Eliminar"); gotoxy(a, b + 4); printf("3 - Consultar"); gotoxy(a, b + 5); printf("4 - Modificar"); gotoxy(a, b + 6); printf("5 - Fin"); gotoxy(a, b + 7); printf("Ingrese una opcion: "); scanf("%c", &op); return op; } char menuSecundario(){ char op; clrscr(); gotoxy(a, b); printf("MENU"); gotoxy(a, b + 2); printf("1 - Agregar"); gotoxy(a, b + 3); printf("2 - Eliminar"); gotoxy(a, b + 4); printf("3 - Consultar"); gotoxy(a, b + 5); printf(" A - Consultar por edad"); gotoxy(a, b + 6); printf(" B - Consultar por nombre"); gotoxy(a, b + 7); printf(" C - Consultar por cedula"); gotoxy(a, b + 8); printf(" D - Fin de consulta"); gotoxy(a, b + 9); printf("4 - Modificar"); gotoxy(a, b + 10); printf("5 - Fin"); gotoxy(a, 21); printf("Ingrese una opcion: "); scanf("%c", &op); return op; } /* Función que emula el CLRSCR */ void clrscr(){ system("cls"); } /* Función que emula el GOTOXY */ void gotoxy(short x, short y){ COORD pantalla; pantalla.X=(short) x; pantalla.Y=(short) y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pantalla); } /* Limpiar buffer */ void limpiarBuffer(){ fflush(stdin); }