Menu v C

Programovacie jazyky, rady, poradňa...
NumeriMAN
Novice
Novice
Príspevky: 6
Registrovaný: 12 jún 2014, 17:49

Menu v C

Príspevok od používateľa NumeriMAN »

Cawko 8)
Potreboval by som pomoc. Chcem zostrojit aplikaciu v C, ktora by mala mat menu, cez ktore by sa dala vyvolat zvolena funkcia. Vedel by niekto poradit? Viem, ze bude treba vytvorit premennu a nacitat do nej hodnotu podla ktorej bude funkcia zavolana. Moj kod vyzera takto:

Kód: Vybrať všetko

menu()
{ 
      /*deklaracia premennej na vyber*/
      int volba;
do
{
      printf("====MENU====\n");
      printf("1. Vypocet Pytagorovej vety\n");
      printf("2. Vypocet obsahu kruhu\n");
      printf("3. Ukoncit aplikaciu\n");
      scanf("%d",&volba);
   
      switch (volba);
      {
     1: /*vyvolanie funkcie na vypocet Pytagorovej vety (pytagorovaveta)*/
          main();
          break;
     2: /*vyvolanie funkcie na vypocet obsahu kruhu (obsah kruhu)*/
          break;
     3: printf("Goodbye\n"); 
         break;
     default: printf("Neplatna volba, skus znova\n");
                    break;
 } 
  
} while (choice != 3);
}
Ale nefunguje pls help :-)
pcsiete
Medium Star
Medium Star
Príspevky: 413
Registrovaný: 07 dec 2012, 18:47

Re: Menu v C

Príspevok od používateľa pcsiete »

Ale nefunguje pls help :-)
uhm.

Kód: Vybrať všetko

menu()
{ 
    /* deklaracia premennej na vyber */
    int volba;
    do
    {
        printf("====MENU====\n");
        printf("1. Vypocet Pytagorovej vety\n");
        printf("2. Vypocet obsahu kruhu\n");
        printf("3. Ukoncit aplikaciu\n");
        scanf("%d",&volba);
   
        switch (volba)
        {
        case 1:
            /* vyvolanie funkcie na vypocet Pytagorovej vety (pytagorovaveta) */
            main();
            break;
        case 2:
            /* vyvolanie funkcie na vypocet obsahu kruhu (obsah kruhu) */
            break;
        case 3:  
            break;
        default:
            printf("Neplatna volba, skus znova\n");
            break;
        } 
    } while (volba != 3);
    
    /* koniec */
    printf("Goodbye\n");
}
Vynechal si case, dal si tam bodkočiarku naviac a zabudol si, že si premenoval choice na volba.
Fabo
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6810
Registrovaný: 16 nov 2007, 17:23
Bydlisko: 's Chravenhache
Kontaktovať používateľa:

Re: Menu v C

Príspevok od používateľa Fabo »

Uhm,

Kód: Vybrať všetko

case 1:
            /* vyvolanie funkcie na vypocet Pytagorovej vety (pytagorovaveta) */
            main();
            break;
co je to za divny napad volat z funkcie main?
(Teda ak si nahodou neprepisoval nastavenie kompilacie aby bola vstupna fcia menu(), ale to je prinajmensom divne robit...)
Napísať odpoveď