Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

175
Visualizações
¿Cómo puedo pasar un valor int de función de menú de vuelta a Main para acceder a otras funciones de menú usando la instrucción Switch?

Estoy haciendo esto como parte de un proyecto escolar y estoy muy perdido y esto es solo el comienzo. Nuestro profesor quiere que tengamos 4 funciones de menú. Cada menú tiene opciones para acceder a otras funciones dentro del programa. Primero, se nos pide que tengamos el estado del programa si queremos iniciarlo o salir. Eso no es un problema. Mi problema es que cuando ejecuto la función del menú principal y selecciono una opción, no puedo obtener mi elección para volver a principal para ejecutar el cambio de caso para acceder a los otros menús. En este momento tengo todos los demás menús que dicen "próximamente..." solo para saber que lo estoy haciendo bien. Agregaré más una vez que pase esta parte. Esta es mi primera publicación aquí, así que me disculpo si es mucho código para publicar. Agradezco mucho cualquier ayuda. Gracias.

 #include <stdio.h> #include <stdlib.h> int main() { //declare all working variables: mOption, FManOption, COption...etc... int MOption = 0; int FManOption = 0; int FOption = 0; int COption = 0; int userChoice = 0; int n = mainMenu(); switch(n) { case 1: while(FManOption != 3) { FManOption = FishermanMenu(); switch(FManOption) { case 1: //get a fisherman //count fisherman break; case 2: //prompt for a ssn, validate, search //if found display everything about this fisherman break; case 3: //hit any key to go back to main menu //reset FManOption break; default: "error!"; }//end switch(FManOption) }//end while(FManOption != 3) break; default: printf("error"); } return 0; } int mainMenu() { int option = 0; printf("-------Welcome to the Fishing Tournament Main Menu!-------\n\n"); do { printf("1 - Fisherman menu\n"); printf("2 - Fish menu\n"); printf("3 - Tournament(Catch) menu\n"); printf("4 - Close Tournament (determine winner)\n"); printf("5 - Quit Program\n\n"); printf("Please select a menu option: "); if (scanf("%d", &option) != 1) /* check scanf() return value for input errors */ { /* handle input error */ return -1; } } while (option < 1 || option > 5); /* check the range of option ( 1 - 5) */ return option; /* finally return the final correct option */ } int FishermanMenu() { printf("Coming soon..."); /* -1-Register fisherman -2-Search fisherman -3-Go back to main menu */ //FManOption }//end Fisherman Menu
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Su función mainMenu() no devuelve nada más que 0 , además ignora el valor devuelto en main, cuando llama a mainMenu(); (esto ni siquiera debería compilar por cierto), esto es probablemente lo que está buscando,

 int mainMenu(void) { int option = 0; printf("-------Welcome to the Fishing Tournament Main Menu!-------\n\n"); do { printf("1 - Fisherman menu\n"); printf("2 - Fish menu\n"); printf("3 - Tournament(Catch) menu\n"); printf("4 - Close Tournament (determine winner)\n"); printf("5 - Quit Program\n\n"); printf("Please select a menu option: "); if (scanf("%d", &option) != 1) /* check scanf() return value for input errors */ { /* handle input error */ return -1; } } while (option < 1 || option > 5); /* check the range of option ( 1 - 5) */ return option; /* finally return the final correct option */ } int main(void) { int n = mainMenu(); /* save the result to n */ /* your code */ return 0; }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda