سؤال

لدي برنامج عن الفئة C أريد أن أكتب.البرنامج يسأل عن كمية و أريد أن تتضاعف هذه الكمية حسب متغير آخر وهو مدخلات المستخدم.آلة حاسبة الأساسية النصي ل ج الدرجة :)

لدي اقامة مثل هذا ،

    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);

لماذا لا تعمل كما هو متوقع ؟

هل كانت مفيدة؟

المحلول

لديك مضاعفة اليورو مع مستخدم معين الكمية الكمية قبل أن تدخل من قبل المستخدم. وينبغي أن يكون على النحو التالي:     // euro_result = اليورو * الكمية. // <- تحول هذا إلى موقف معين أدناه

//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);

وهذا كل شيء.

نصائح أخرى

ومن الخطأ أن خط

euro_result = euro * qty;

ويجب أن يكون بعد قراءة في الكمية

البيانات في برنامج C هي أعدم بالتتابع, و التعبيرات لا تقييم رمزيا.لذلك تحتاج إلى إعادة ترتيب البيانات الخاصة بك بهذه الطريقة:

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);

وأظن تريد حساب euro_result = euro * qty; فقط <م> بعد الانتهاء من جمع قيمة الكمية.

والمشكلة هي أنك ضرب qty من قبل سعر الصرف قبل المستخدم إدخالها أية بيانات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top