Pregunta

Tengo un programa para una clase C que necesito escribir. El programa solicita una cantidad, y necesito multiplicar esa cantidad por otra variable que ingrese el usuario. Script de calculadora básica para una clase c :)

Lo tengo configurado así,

    int qty; //basic quantity var
float euro, euro_result;

//assign values to my float vars
euro = .6896; //Euro Dollars
    euro_result = euro * qty; // Euro Dollars multiplied by user input qty

//start program for user
printf("Enter a quantity: ");

//alow user to input a quantity
scanf("%d", &qty);

printf("Euro:       %f \n", euro_result);

¿Por qué no funciona como se esperaba?

¿Fue útil?

Solución

Ha multiplicado el euro con la cantidad de cantidad dada por el usuario antes de ingresarlo. Debería ser como a continuación:     // euro_result = euro * qty; // < - cambia esto a la posición dada a continuación

//start program for user
printf("Enter a quantity: ");

//alow user to input a quantity
scanf("%d", &qty);

euro_result = euro * qty; // Euro Dollars multiplied by user input qty

printf("Euro:       %f \n", euro_result);

Eso es todo.

Otros consejos

El error es que la línea

euro_result = euro * qty;

necesita ser después de qty es read-in

Las declaraciones en un programa en C se ejecutan secuencialmente , y las expresiones no se evalúan simbólicamente . Por lo tanto, debe reordenar sus declaraciones de esta manera:

int qty;
float euro, euro_result;

euro = .6896; // store constant value in 'euro'

printf("Enter a quantity: ");

scanf("%d", &qty); // store user input in 'qty'

euro_result = euro * qty; // load values from 'euro' and 'qty',
                          // multiply them and store the result
                          // in 'euro_result'

printf("Euro:       %f \n", euro_result);

Sospecho que desea calcular euro_result = euro * qty; solo después de haber reunido el valor de cantidad.

El problema es que está multiplicando el qty por el tipo de cambio antes de que el usuario haya ingresado ningún dato.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top