1. 程式人生 > >7-8 單詞長度(15 分)(將字串中的單詞提取出來)

7-8 單詞長度(15 分)(將字串中的單詞提取出來)

#include <bits/stdc++.h>

using namespace std;
int main()
{
    string str, buf;//字串型別,長度不定
    int n;
    getline(cin, str);//讀入字串
    n = str.length();//字串的長度
    str[n - 1] = ' ';//將最後一個符號設為空格,那麼在提取的時候就不會被提取到
    stringstream ss(str);//將字串中的單詞提取出來,ss可以自己隨便起名字
    int flag = 0;
    while(ss >> buf)//用法類似於cin >> a,將剛剛提取出來的單詞輸出給buf
    {
        if(flag == 0)
        {
            printf("%d", buf.length());
        }
        else
        {
             printf(" %d", buf.length());
        }
        flag++;
    }
    printf("\n");
    return 0;
}

你的程式要讀入一行文字,其中以空格分隔為若干個單詞,以.結束。你要輸出每個單詞的長度。這裡的單詞與語言無關,可以包括各種符號,比如it's算一個單詞,長度為4。注意,行中可能出現連續的空格;最後的.不計算在內。

輸入格式:

輸入在一行中給出一行文字,以.結束

提示:scanf("%c",...);來讀入一個字元,直到讀到.為止。

輸出格式:

在一行中輸出這行文字對應的單詞的長度,每個長度之間以空格隔開,行末沒有最後的空格。

輸入樣例:

It's great to see you here.

輸出樣例:

4 5 2 3 3 4