每当我在循环中包含cin时,程序会在延迟一段时间后接受输入?

时间:2018-01-23 12:11:19

标签: c++

每当我在循环中包含cin时,程序会在延迟一段时间后接受输入? 为什么会这样?请尝试以下此计划。

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;

int main()
{
    int n=0,k,i,j,t;
    vector<int> a,b,c,d,s;
    cin>>n>>k;
    for(i=0;i<n;i++)
    {
        cin>>j;
        a.push_back(j);
        cin>>j;
        b.push_back(j);
        cin>>j;
        c.push_back(j);
    }

    for(t=0;t<k;t++)
    {
        for(i=0;i<n;i++) d.push_back( (a[i]+t)%k + (b[i]+t)%k + (c[i]+t)%k );
        s.push_back(*max_element(d.begin(),d.end()));
        d.erase(d.begin(),d.begin()+d.size());
    }
    cout<<*min_element(s.begin(),s.end());
    return 0;
}

1 个答案:

答案 0 :(得分:0)

程序将等待您键入输入并按Enter键,它将读取输入。第一个cin将等到下一个输入按下,然后将输入解析到下一个空格或下一个空格,并且留下一个空格之后的任何内容将被未来的cins读取。随后的硬币也一样。即使行中有空格,也只有在按Enter后才会继续执行。