编写一个C ++程序,该程序从标准输入读取整数,直到文件结尾

时间:2019-09-17 14:44:33

标签: c++

  

编写一个C ++程序,该程序从标准输入读取整数,直到文件结尾。
  单独打印一行中读取的最大整数。   
应该检测并忽略任何错误输入(不是整数的东西)。   
在根本不提供整数的情况下,请不要打印整数并停止。   
整个程序使用40行代码。只是从cin阅读。

#include<iostream>

using namespace std;

int main(){

    int number;
    int LargerNumber;
    int n = 0;

    cin >> number;

    while(!cin.eof()){
        if(n==0)
            LargerNumber = number;

        if(LargerNumber < number)
            LargerNumber = number;

        n++;
        cin >> number;
    }

    if(n==0)
        cout<<"NO INTEGERS"<<endl;
    else
        cout<<"Largest: "<< LargerNumber <<endl;

    return 0;
}

因此,该程序确实可以编译,但是当我构建它并在我们的老师告诉我们使用的程序中运行它时,它不会输出正确的语句。

老师将输入一些数字,我们必须输出最大的整数,但是我们必须输出一个错误,要么没有整数,要么输出错误(如果其中有字符/单词)。

例如:如果输入为7 4 19 99 8 309256,则输出应为309256,但是我的程序一直超时,或者仅输出第一个数字7,

Ex:输入2,44,66,83,4,5,-9 输出:错误负数

Ex:输入4,7,-8,22,3,5 输出:错误负数

Ex:输入3,6,8,ad,4,6 输出:错误广告,不是整数

例如:输入55,7,81,2,4,5,9.9,0 输出:错误9.9不是整个整数

0 个答案:

没有答案