fernandopinheiro
(usa Debian)
Enviado em 02/04/2011 - 18:10h
Amigo a sua logica esta correta.....o que eu percebo é que voce tem algum problema com a linguagem!!!
Repare na sua construção do switch(), voce esta fazendo um switch para cada case:
Isso não esta correto !!!
Outra coisa nas operações as variaves que deveriam receber o resultado como no caso de soma, subbtração, multiplicação e divisão nao estão recebendo resultado algum pois voce nao passa valor pra elas devido a construção.
voce fez assim:
soma:n1+n2;
quando o correto é assim:
soma = n1+n2;
Por isso que gera os numeros grandes que voce falou pois voce esta imprimindo a "sujeira" que esta na memoria e não o resultado das operações.
O codigo esta corrigido agora:
#include <stdio.h>
//#include <stdlib.h> Nesse ex não precisa
//#include <math.h> Nesse ex não precisa
int main ()
{
int n1, n2;
int opcao;
int soma,divisao,multiplicacao,subtracao;
// Entrada de Dados
printf("Informe o primeiro numero: ");
scanf("%d", &n1);
printf("Escolha uma opcao: ""\n 1.Somar""\n 2.Subtrair""\n 3.Multiplicar""\n 4.Divisao");
printf("\n Opcao numero: ");
scanf("%d", &opcao);
printf("Informe o segundo numero: ");
scanf("%d", &n2);
switch(opcao)
{
case 1:
soma = n1+n2;
printf("A soma eh %d",soma);
break;
case 2:
subtracao = n1-n2;
printf("A subtracao eh %d",subtracao);
break;
case 3:
multiplicacao = n1*n2;
printf("A multiplicacao eh %d",multiplicacao);
break;
case 4:
divisao = n1/n2;
printf("A divisao eh %d",divisao);
}
}