operaciones con fracciones [me compila pero tiene un fallo y no lo encuentro]

Iniciado por snowspring, 27 Febrero 2018, 14:08 PM

0 Miembros y 1 Visitante están viendo este tema.

snowspring

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>







void leerFracciones(struct fraccion *fraccion1, struct fraccion *fraccion2, char *operacion){
printf("\nFraccion 1: ");
printf("\nNumerador: ");
fflush(stdin);
scanf("%d", &fraccion1->numerador);
printf("Denominador: ");
fflush(stdin);
scanf("%d", &fraccion1->denominador);


printf("\nFraccion 2: ");
printf("\nNumerador: ");
fflush(stdin);
scanf("%d", &fraccion2->numerador);
printf("Denominador: ");
fflush(stdin);
scanf("%d", &fraccion2->denominador);


printf("\nIntroduzca la operacion que desee realizar (+, -, * ó /): ");
fflush(stdin);
scanf("%c", &operacion);
}





· Los códigos deben ir en etiquetas GeSHi
· No se debe escribir en mayúsculas
>aquí las reglas del foro
-Engel Lex

MAFUS

¿Qué falla?
Sé un poco más concreto, sino es difícil de saber lo que se busca.

snowspring

Cita de: MAFUS en 27 Febrero 2018, 14:33 PM
¿Qué falla?
Sé un poco más concreto, sino es difícil de saber lo que se busca.

El programa me compila y se ejecuta, me pide los datos bien y todo, pero a la hora de mostrar el resultado, sea cual sea la operación realizada el resultado siempre es 1/0, he cambiado las funciones un montón de veces y no he conseguido que eso cambie.
Seguro que es una tonteria pero es que soy incapaz de verlo.

MAFUS

Línea 63:
scanf("%c", &operacion);
operacion ya es un puntero y no debes usar el &. Debe quedarte así:
scanf("%c", operacion);

snowspring

Cita de: MAFUS en 27 Febrero 2018, 14:45 PM
Línea 63:
scanf("%c", &operacion);
operacion ya es un puntero y no debes usar el &. Debe quedarte así:
scanf("%c", operacion);


Sabía que sería algun detalle así. Muchas gracias!