2016-04-13 6 views
-2

私は数時間前にこれを理解しようとしてきました。ユーザーが選択して の選択肢を返すようにするには、関数getMenuChoiceを使用するとします。私はswitchステートメントでreturnを使う方法を知らない。非常に混乱。私のスイッチでこの文字を返さない私の関数で何が間違っています

#include <iostream> 
using namespace std; 

double milesToKilometers(); 
double kilometersToMiles(); 
void showMenu(); 
char getMenuChoice(); 
int main() 
{ 
    char choice; 
    do 
    { 
     showMenu(); 
     getMenuChoice(); 
     switch (toupper(choice)) 
     { 
     case 'A': 
      cout << milesToKilometers() << endl; 
      break; 
     case 'B': 
      cout << kilometersToMiles() << endl; 
      break; 
     case 'Q': 
      cout << "Closing" << endl; 
      break; 
     default: 
      cout << "Not Valid" << endl; 
      break; 
     } 
    }while (choice != 'Q'); 
    return 0; 
} 
double milesToKilometers() 
{ 
    cout << "Enter Miles:" << endl; 
    double m; 
    cin >> m; 
    m = m * 1.6093; 
    return m; 
} 

double kilometersToMiles() 
{ 
    cout << "Enter Kilometers: " << endl; 
    double k; 
    cin >> k; 
    k = k * .6214; 
    return k; 
} 
void showMenu() 
{ 
    cout << "A. Miles to Kilometers" << endl; 
    cout << "B. Kilometers to Miles" << endl; 
    cout << "Q. Quit" << endl; 
    return; 
} 
char getMenuChoice() 
{ 
    char choice; 
    cout << "Enter Choice: " << endl; 
    cin >> choice; 
    return choice; 
} 
+3

'選択肢= getMenuChoice()でなければなりません。 – songyuanyao

+0

ちょうどフレンドリーなヒントですが、あなたはこのページを読むことができます:[How-To-Ask Guide](https://stackoverflow.com/help/how-to-ask)可能な限り簡単に答えることができます。あなたが抱えている問題を修正するためにあなたがした努力と、それらの修正を試みたときに何が起こったのかを必ず含めてください。ショーコードとエラーメッセージも忘れないでください! –

答えて

0

この関数は、変数に割り当てる必要がある値を返します。

choice = getMenuChoice(); 

基本要素は配置されていますが、割り当てが不足しています。

1

スイッチのchoiceという名前の変数が初期化されていません。 `;あなたに

getMenuChoice(); 

機能

choice = getMenuChoice(); 
関連する問題