0

編集: これが If-Else です。何が起こっているのか見てください。答えが間違っている場合、誰かが戻る方法を教えてもらえますか? のように、間違った答え、もう一度入力しますか?

名前空間 std を使用します。

int main()
{

cout<<"Welcome to the Grade Database. Please insert your domain: " ;
cout<<"\n";
int d, n;
cin>>d;
cout<<"Now enter your total grade(between 0-100): " ;
cin>>n;
if (n>0 && n<59){
    cout<<"See you next year then :(" ;
    cout<<"F-"<<n;}
else if (n<60 && n>=69){
    cout<<"Well...you pass ;D" ;
    cout<<"E-"<<n<<"  ~"<<d;}
else if (n>70 && n<=79){
    cout<<"Better than the average!";
        cout<<"D-"<<n<<"  ~"<<d ;}
else if (n>80 && n<=89){
    cout<<"Very well sir!";
    cout<<"C-"<<n<<"  ~"<<d;}
else if (n>90 && n<=99){
    cout<<"Wow, amazing! One of the best!";
    cout<<"B-"<<n<<"  ~"<<d;}
else if(n==100){
    cout<<"Well, hello there Mr. Stephen Hawking.";
    cout<<"A-"<<n<<"  ~"<<d;}
else{
    cout<<"Invalid Entry.";}

return 0;

}

4

1 に答える 1

5

switchin C++ は範囲や条件をサポートせず、完全一致のみをサポートします。条件があるので、次のようにifandを使用してみてください。else

cin>>n;
if (n>0 && n<59) {
    cout<<"See you next year then :(" ;
    cout<<"F-"<<n;
}
else if (n>=60 && n<=69) {
    cout<<"Well...you pass ;D" ;
    cout<<"E-"<<n<<"  ~"<<d;
}
else if (n>=70 && n<=79) {
    cout<<"Better than the average!";
    cout<<"D-"<<n<<"  ~"<<d ;
}
else if (n>=80 && n<=89) {
    cout<<"Very well sir!";
    cout<<"C-"<<n<<"  ~"<<d;
}
else if (n>=90 && n<=99) {
    cout<<"Wow, amazing! One of the best!";
    cout<<"B-"<<n<<"  ~"<<d;
}
else if (n==100) {
    cout<<"Well, hello there Mr. Stephen Hawking.";
    cout<<"A-"<<n<<"  ~"<<d;
}
else {
    cout<<"Invalid Entry.";
}

おそらく改行文字も必要でしょう。単純に 2 度目の書き込みcout <<では新しい行は開始されませんstd::endl

于 2013-03-01T20:30:04.233 に答える