Instruction Switch avec des cordes?

Je suis en train de travailler sur un petit devoir à la maison et je suis censé faire un menu de nourriture. De toute façon, mon interrupteur ne fonctionne pas. Je suis en train d'utiliser une fonction simple que je peux passer une valeur de "poisson", "boire", ou "chips" et alors il sera de sortie:

"Are you ordering FISH?" (or chips/drink)  

Je ne peux pas obtenir le commutateur de travailler, il est censé détecter ce que je passe, et ensuite à la sortie d'un printf basé sur le commutateur cas.

CODE:

#include <stdio.h>

void menu() {
    printf("\nWelcome to Sunny FISH & CHIPS!\n\n");
    printf("########     Fish :     Haddock(K) Large(L) | $5.00\n");
    printf("# FOOD #                Halibut(T) Large(L) | $4.00\n");
    printf("########     Chips:     Cut(C)     Large(L) | $2.00\n");
    printf("                        Ring(R)    Large(L) | $3.00\n");
    printf("                                            | \n");
    printf("##########   Soft Drinks(S)        Large(L) | $2.00\n");
    printf("# DRINKS #   Coffee(C)             Large(L) | $1.75\n");
    printf("##########   Tea(T)                Large(L) | $1.50\n");
    printf("---------------------------------------------\n");
    printf("Note: Medium price: 80%% of large.\n");
    printf("       Small price: 60%% of large.\n");
    printf("TAX is 10%%.\n");
    printf("More than 5 fish, 10%% discount on drink.\n");
    printf("Every 10 fish purchased, get 1 free softdrink.\n");
    printf("  - size of drink is according to size of fish\n");
}

void question (char choice[5]) {
    switch (choice[5]) 
    {
        case choice["fish"]:
            printf("Do you order FISH?\n");
        case choice["drink"]:
            printf("Do you order CHIPS?\n");
        case choice["chips"] :
            printf("Do you order DRINKS?\n");
        default :
            printf("Enter a valid choice: \n");
    }
}

main() {

    //menu();
    question("fish");

}

OriginalL'auteur eveo | 2012-03-24