#include <iostream>
using namespace std;

int main() {
   string str;
   getline(cin,str);
   int cnt=0;
   for(char c:str)
   {
    if(c==' '||c=='\n') continue;
    cnt++;
   }
   cout<<cnt;
}
// 64 位输出请用 printf("%lld")

关于我永远也记不住的输入....

是这样,cin遇到空格会停止读入,不会继续下去。