Programa não imprime dentro do switch [RESOLVIDO]

1. Programa não imprime dentro do switch [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 03/03/2011 - 14:27h

O meu programa não está imprimindo o que está dentro do switch,no switch está as opções,e essas opções não são imprimidas no programa.
Veja o código-fonte:

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

int main (){
//variaveis

int n1,n2,opcao,soma,subtracao,divisao,multiplicacao;
//Entrada de dados
printf("Informe o primeiro numero:");
scanf("%d",&n1);
printf("Informe o segundo numero:");
scanf("%d",&n2);
printf("Escolha uma opção:""\n 1.soma""\n 2.subtracao""\n 3.divisao""\n 4.multiplicacao");
printf("\n Opcao numero:");
scanf("%d",&opcao);

//Processamento
getchar();
switch(opcao){
case 1:
soma=n1+n2;
printf("O resultado é:%d",soma);
break;
}
{
switch(opcao){
case 2:
subtracao=n1-n2;
printf("O resultado é:%d",subtracao);
break;
}
{
switch(opcao){
case 3:
divisao=n1/n2;
printf("O resultado é:%d",divisao);
break;
}
{
switch(opcao){
case 4:
multiplicacao=n1*n2;
printf("O resultado é:%d",multiplicacao);
break;
getchar();
return(0);
}
}
}
}
}


  


2. emacs

Emerson Lara
snowbg

(usa CentOS)

Enviado em 03/03/2011 - 14:31h

Tira o getchar();


3. Re: Programa não imprime dentro do switch [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 03/03/2011 - 14:36h

O uso da estrutura switch está errado. Ele tem o seguinte formato:
switch(variavel)
{
case 1:

break;

case 2:

break;
...


4. OK

Perfil removido
removido

(usa Nenhuma)

Enviado em 03/03/2011 - 14:37h

Tirei o getchar(); e ainda não foi.


5. Ok

Perfil removido
removido

(usa Nenhuma)

Enviado em 03/03/2011 - 14:41h

Arrumei os switch e ainda não foi:

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

int main (){
//variaveis

int n1,n2,opcao,soma,subtracao,divisao,multiplicacao;
//Entrada de dados
printf("Informe o primeiro numero:");
scanf("%d",&n1);
printf("Informe o segundo numero:");
scanf("%d",&n2);
printf("Escolha uma opção:""\n 1.soma""\n 2.subtracao""\n 3.divisao""\n 4.multiplicacao");
printf("\n Opcao numero:");
scanf("%d",&opcao);

//Processamento

switch(opcao){
case 1:
soma=n1+n2;
printf("O resultado é:%d",soma);
break;

case 2:
subtracao=n1-n2;
printf("O resultado é:%d",subtracao);
break;

case 3:
divisao=n1/n2;
printf("O resultado é:%d",divisao);
break;

case 4:
multiplicacao=n1*n2;
printf("O resultado é:%d",multiplicacao);
break;

return(0);
}
}


6. Re: Programa não imprime dentro do switch [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 03/03/2011 - 14:45h

Quando era pra entrar no case, o que acontece? Não posso testar seu código, pois estou no trabalho.


7. Ok

Perfil removido
removido

(usa Nenhuma)

Enviado em 03/03/2011 - 14:48h

O printf que está dentro do switch não é executado.


8. Re: Programa não imprime dentro do switch [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 03/03/2011 - 14:56h

Experimente remover esse return(0); do bloco switch.


9. Consegui

Perfil removido
removido

(usa Nenhuma)

Enviado em 03/03/2011 - 15:09h

Agora consegui,agora o programa está funcionando corretamente,veja o código-fonte:

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

int main ()
{
// Variaveis
int n1, n2, opcao,soma,subtracao,multiplicacao,divisao;

// Entrada de Dados
printf("Informe o primeiro numero: ");
scanf("%d", &n1);
printf("Informe o segundo numero: ");
scanf("%d", &n2);
printf("Escolha uma opcao: "
"\n 1.Somar"
"\n 2.Subtrair"
"\n 3.Multiplicar"
"\n 4.Divisao"
"\n 5.Exponenciacao");
printf("\n Opcao numero: ");
scanf("%d", &opcao);


// Processamento
getchar();
switch(opcao){
case 1:
soma=n1+n2;
printf("A soma é %d",soma);
break;
case 2:
subtracao=n1-n2;
printf("A subtracao é %d",subtracao);
break;
case 3:
multiplicacao=n1*n2;
printf("A multiplicacao é %d",multiplicacao);
break;
case 4:
divisao=n1/n2;
printf("A divisao é %d",divisao);
}
getchar();
}
// Final do Codigo






10. Re: Programa não imprime dentro do switch [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 03/03/2011 - 15:25h

Foi o que eu lhe sugeri? Se sim, selecione a resposta como melhor.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts