C++ 运行for循环,最后一个值仅在我按Enter键后出现

C++ 运行for循环,最后一个值仅在我按Enter键后出现,c++,for-loop,input,C++,For Loop,Input,给定一对整数,我正在编写一个程序,遍历每对整数,找到最小值,并显示最小值。以下链接是程序结果的图像 我遇到的问题是for循环不会一次显示所有结果——最后一个结果总是丢失。只有在我按下Enter键之后,它才会显示最后的结果 #include <iostream> int main() { //using declarations using std::cout; using std::cin; using std:: endl; // va

给定一对整数,我正在编写一个程序,遍历每对整数,找到最小值,并显示最小值。以下链接是程序结果的图像

我遇到的问题是for循环不会一次显示所有结果——最后一个结果总是丢失。只有在我按下Enter键之后,它才会显示最后的结果

#include <iostream>
int main() 
{
    //using declarations
    using std::cout;
    using std::cin;
    using std:: endl;

    // variables
    // signed int to test for negative values as well
    int numOfPairs;
    signed int firstNum, secondNum;

    // prompt user
    cout << "data:" << endl;
    cin >> numOfPairs;

    // answer display
    cout << endl << "answer:" << endl;

    // for each pair of numbers find the minimum
    for (int i = 0; i < numOfPairs; i++){
        cin >> firstNum >> secondNum;
        if (firstNum > secondNum)
        {
            cout << secondNum << " ";
        }
        else if (secondNum > firstNum)
        {
            cout << firstNum << " ";
        }
    }

    // exit code
    return 0;
}
#包括
int main()
{
//使用声明
使用std::cout;
使用std::cin;
使用std::endl;
//变数
//带符号的int也用于测试负值
整数对;
签名int firstNum,secondNum;
//提示用户
双数对;
//应答显示
cout>secondNum;
如果(firstNum>secondNum)
{

cout听起来您正在输入以下内容:

3<Enter>
5 3<Enter>
2 8<Enter>
100 15
3
5 3
2 8
100 15
然后您希望程序处理所有行,包括未按Enter键的
10015

这将不起作用,因为运行时不能知道你不在一个数字中间,例如你可能会进入<代码> 100 150


您需要在每一行(包括最后一行)后按Enter键。复制并粘贴它们here@JohnZwinck
flush
ing有什么帮助?问题是
cin
正在等待输入。您希望一次完成所有输入,然后完成所有输出,但此代码是输入-输出、输入-输出的组合,请使用对然后在pairs@VidorVistrom谢谢Vidor!一开始我决定使用数组来获取所有值。这很有意义!谢谢John!