Error desconocido!!

julit0
20 de Octubre del 2009
bueno cuando depuro este algoritmo en visual me hace una cosa sin sentido (para mi)

al llegar al scanf de la variable caracter no la lee y salta al default del switch mirarlo





#include<stdio.h>

void main()
{
float x,y;
char operacion;

printf ("introduce dos numerosn");
scanf ("%f %f",&x, &y);
printf ("introduce una operacion valida +-*/()><, selecione > para calcular el maximo y < para calcular el minimon");

scanf ("%c",&operacion);

switch (operacion)
{
case '+': printf("%f", x+y);
break;
case '-': printf("%f", x-y);
break;
case '*': printf("%f",x*y);
break;
case '/': if ((y>0) && (y<0))
{
printf("%f",x/y);
}
else
{
printf ("error denominadorn");
}
break;

case '>': if (x>y)
{
printf("El maximo es : %f",x);
}
else
{
printf("El maximo es : %f", y);
}
break;

case '<': if (x<y)
{
printf("El minimo es : %f",x);
}
else
{
printf("El minimo es : %f", y);
}
break;


default: printf("operacion incorrecta");
break;

}


}




el enunciado dle problema esta en catalan pero se entiende xD

Feu un programa que us demani dos nombres reals i us deixi triar entre les següents opcions:


a. Sumar-los.
b. Restar-los
c. Multiplicar-los
d. Dividir-los (tenint en compte el denominador!!).
e. Calcular-ne el màxim.
f. Calcular-ne el mínim.
g. Sortir.

L’execució de cadascuna d’aquestes opcions s’implementarà usant l’alternativa múltiple switch /case. Afegiu-hi l’opció default per considerar el cas en què l’usuari entri un opció incorrecta.


Es copy past no me mateis xD