Ir para o conteúdo
SitoMan

Indica quantos dias tem um determinado mês (com switch)

Mensagens Recomendadas

SitoMan    1
SitoMan

Viva!

Quero fazer um programa que dado um determinado número do mês (1, 2, etc) diga quantos dias tem esse mês, ou seja:

1 (Janeiro) : 31 dias

2 (Fevereiro) : 28 dias

etc

O mesmo programa eu fiz com if-else, sendo que me desenrasquei perfeitamente, muito fácil, muito prático. No entanto estou a tentar fazer com switch e estou com uns problemas...

#include <stdio.h>
#include <stdlib.h>

int main()
{
    char a;
    int mes,dias;
    printf("Introduza o numero do mes:");
    scanf("%d",&mes);
    switch(a)
    {
    case 2: 
         dias=28;
    break;
    case 4:   
    case 6:    
    case 9:     
    case 11:
         dias=30; 
    break;         
    defaut:
           dias=31;  
           }
    printf("\nO mes %d tem %d dias\n",mes,dias); 
  system("PAUSE");	
  return 0;
}

Desculpem a má indensão.

Segundo me apercebi, quando compilo o programa não chega a iniciar e o compilador também não apresenta erro nenhum.. Não sei o que se passa...

Obrigado,

SitoMan! :)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pmg    102
pmg

defaut devia ser default.

E se aumentares o nível de warnings do teu compilador ele (provavelmente) avisa-te da falta de "default" no switch.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
SitoMan    1
SitoMan

defaut devia ser default.

E se aumentares o nível de warnings do teu compilador ele (provavelmente) avisa-te da falta de "default" no switch.

Exactamente!

Errei... Faltava o l, sim senhor!

Obrigado!

Em relação a aumentar os warnings, vou ver se encontro por aqui a maneira de os aumentar.

Cumpz! :)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pmg    102
pmg

Quando compilares incluis a opçao -Wall

Suponho que estás a falar do "gcc".

Mas, no gcc, a opção -Wall não inclui o warning de switch sem default.

Para obteres esse warning, a opção a usar é "-Wswitch-default".

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Ribamar    0
Ribamar

estava a falar do windows

é um bocado ridiculo ter q se especificar que se quer ver warnings no switch, -Wall ja deveria cobrir todos os warning.

n é possivel alterar algum file de configuração do compilador para ja incluir essas opçoes todas? acho que no do VS da pode-se altererar um ficheiro para modificar o nivel d warnings...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade