質問

書く必要があるCクラスのプログラムがあります。プログラムは数量を要求し、その数量にユーザーが入力する別の変数を掛ける必要があります。 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);

なぜ期待どおりに動作しないのですか?

役に立ちましたか?

解決

ユーザーが入力する前に、ユーザーが指定した数量qtyでユーロを掛けました。 以下のようになります:     // euro_result = euro * qty; // <!> lt;-これを以下の位置にシフトします

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

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

qtyの値を収集した 後にのみeuro_result = euro * qty;を計算したいのではないかと思います。

問題は、ユーザーがデータを入力する前にqtyに為替レートを掛けていることです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top