使用简单的算术C ++输出奇怪的输出

时间:2010-09-03 19:09:52

标签: c++

如果我给这个程序一个输入字符串,它会给我一些非常奇怪的输出。我该如何处理这个问题?我想简单地说明领事上有错误。

#include <cstdlib> 
#include <iostream>

using namespace std;

int main() 

{ 
    cout << endl;
    cout << "Homework (out of 70 pts):  " ;
    int HW ;
    cin >> HW ;

    cout << "Midterm (out of 100 pts):  " ;
    int MT ;
    cin >> MT ;

    cout << "Final (out of 100 pts):    " ;
    int F ;
    cin >> F ;
    cout << endl;

    int S;
    S = HW + MT + F;



    cout << "Score:     " << S << endl;
    cout << endl; 

    system("pause");
}

1 个答案:

答案 0 :(得分:4)

当您输入cin不期望的值时,例如字符串而不是数字,您的变量中不会读取任何内容,而cin会设置一个错误标记,以防止任何进一步投入。有关同一主题,请参阅my answer to another question