Programação Progressiva

Fórum para dúvidas dos sites: Programação Progressiva, Java Progressivo, C Progressivo


Você não está conectado. Conecte-se ou registre-se

Dúvida com testes switch

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 Dúvida com testes switch em Qua Jun 17, 2015 12:49 am

Gostaria de saber se é possível usar uma string no case ?

Ver perfil do usuário

2 Re: Dúvida com testes switch em Qua Jun 17, 2015 6:36 pm

Não diretamente, renan_fiuza, mas você pode "atribuir" um inteiro a uma string e então usá-lo no switch. Por exemplo:
Código:
#include <stdio.h>
#include <string.h>

int main()
{
    char cores[4][10] = {"verde", "amarelo", "azul", "branco"},
         cor[10];
    int indice = 0;

    printf("Digite uma cor: ");
    scanf("%9s", cor);

    strlwr(cor);

    while(strcmp(cor, cores[indice]) && indice < 4)
        indice++;

    switch(indice)
    {
        case 0:
            puts("\nVoc\210 digitou verde.");
            break;

        case 1:
            puts("\nVoc\210 digitou amarelo.");
            break;

        case 2:
            puts("\nVoc\210 digitou azul.");
            break;

        case 3:
            puts("\nVoc\210 digitou branco.");
            break;

        default:
            printf("Cor inv\240lida.");
    }

    return(0);
}
Na verdade, é uma gambiarra, mas funciona. Very Happy

Ver perfil do usuário

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum