2011-03-14 141 views
0

這是我到目前爲止。它不會工作。我試圖寫它得到一個量的用戶輸入和他們住在縣和程序與稅收使用開關盒

#include<iostream> 

using namespace std; 

int main() 
{ 

    char amt = 0; 
    double county ; 
    char x = 0; 
    double total = 0; 
    total = amt + x; 
    x = county; 


    printf("\nplease enter amount\n"); 

    scanf_s("%d",&amt); 

    printf("\nplease enter county\n"); 

    scanf_s("%c",&x); 



    scanf_s("%c",&total); 
    printf("total:", amt * x); 
    switch(x) 
     { 
     case 'o': 
      printf("orange:",county = 0.06); 


      break; 
     case 'l': 
      printf("lake:",county = 0.07); 


      break; 
     case 's': 
      printf("seminole:",county = 0.08); 


      break; 
     } 






     system("pause"); 
} 
+0

什麼似乎是問題? – Argote 2011-03-14 20:47:39

+0

你能否詳細說明「不行」? – 2011-03-14 20:47:51

+0

可能重複的[你如何使用開關盒與數學](http://stackoverflow.com/questions/5294186/how-do-you-use-switch-case-with-math) – Jason 2011-03-14 20:52:45

回答

1

當您使用printf()總輸出,還可以指定要發送的變量,因此,如果你想打印一個值,如:printf("Value: %f\n", 0.07);。 您可以找到格式說明符here

1

您應該將switch子句放在打印總數的行之前。此外,從我看到你不應該乘以amt * x,但類似subtotal * (1 + county)

1

如果scanf_s()是類似scanf()的東西,你應該考慮使用正確的轉換爲參數(「%d」意味着'int'等等)。