首页 > 解决方案 > c ++计算数字之间的空格(不是字符串)

问题描述

所以我有一个程序,它从用户那里接收整数并将它们放在一个向量中并显示它们。但是,我希望能够在输入数字时显示我输入的数字之间的空格总数。我在网上看了看,但找不到任何适用于整数或字符的东西。我不能使用字符串或 getline 现在所以 idk 做什么.. 这是我的代码

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

int main()
{
    int a,count;
    vector<int> numbers;
    while(cin>>a)
    {
       numbers.push_back(a); 
       // count whitespaces??
    }
    for(int i=0;i<numbers.size();i++)
    {
        cout<<numbers[i]<<endl;
    }
    return 0;
}

所以如果输入是 1(space)2(space)(space)3(space) 我希望能够计算它们之间的总空间所以在这种情况下计数是 4

标签: c++vector

解决方案


尝试getline()

string str;
getline(cin,str);

然后计算空格str

int wc = 0;
for (auto c: str) wc += (c == ' ');
cout << wc << endl;

推荐阅读