2016-04-13 15 views
0

私はコードを書いて、ユーザにメニューを表示して、ペイレートを選択できるようにしました。そして、作業を完了すると、作業時間を入力する必要があります。そこから、ループが終了する前に総総賃金、税金、および純額を計算しようとしています。 #define定数を使用する必要があります。税は最初の$ 300の15%です。または、最低でも、給与率に時間を掛けた単純な計算でどのように追加するのですか?Cのスイッチ&ケース

#include <stdio.h> 
#include <ctype.h> 
int main(void) 
{ 
int pick; 
int hours; 
float total; 

do { 

    printf_s("************************************************\n"); 
    printf_s("Enter the number corresponding to the desired pay rate or action:\n"); 
    printf_s("\n1) $8.75/hr\n"); 
    printf_s("\n2) $9.33/hr\n"); 
    printf_s("\n3) $10.00/hr\n"); 
    printf_s("\n4) $11.20/hr\n"); 
    printf_s("\n5) quit\n"); 
    printf_s("************************************************\n"); 

    scanf_s("%d", &pick); 
    printf("Enter the number of hours: \n"); 
    scanf_s("%d", &hours); 

    switch (pick) 
    { 
    case 1: total = hours * 8.75; 
     break; 

    case 2: total = hours * 9.33; 
     break; 

    case 3: total = hours * 10.00; 
     break; 

    case 4: total = hours * 11.20; 
     break; 

    case 5: 
     break; 

     return 0; 


    } 
} while (pick != 5); 
} 
+0

ご質問はありますか? – DevSolar

+2

約1週間前にこの[同じ質問](https://stackoverflow.com/questions/36468972)に尋ねました。あなたが一週間のうちにそれを理解できなかったら、教師を得ることを真剣に考えるべきです。 – user3386109

+0

ああ、... 'printf_s'も' scanf_s'も標準関数ではありません。実装上定義された拡張機能を使用することで、実際に問題を解決する必要がないときには、a)ドキュメントを見つけること、b)ヘルプを得ることが難しくなります。 – DevSolar

答えて

2

まずあなたは0totalを初期化する必要があります。

また、値を上書きする代わりに、totalに値を追加する必要があるため、複数回追加することができます。

while -loopの後に税金計算のロジックを追加する必要があります。

これは明らかに宿題なので、最初は実際のコードを提供しません。 自分で試してみてください!

+0

あなたの返事をありがとう、私は税金などを計算するためのロジックを追加する場所で少し不安定です。私はケース5の後に、復帰声明の直前に "休憩"の下に追加するのですか? – user3247128

+1

@ user3247128:はい、スイッチの後でループが終了する前に税計算が論理的に行われます。あなたはスイッチの総賃金を計算しました。税額を計算し、2つ以上の明細書の金額に上限を適用してから、(おそらく)詳細を印刷することができます。 –

+0

@ user3247128はい、そこにあるか、 'return 0;'をmainの最後に移動し、 'while'ループの後に税計算を追加することができます。 –

関連する問題