问题标题: 酷町堂:1101   Word识别词长

0
0
已解决
潮文馨
潮文馨
新手光能
新手光能

题目链接: 酷町堂:1101

1101   Word识别词长

经验值:0 时间限制:1000毫秒

题目描述 Description

微软公司想在Word文档中增加一个功能,即可识别单词长度。任意输入一串英文句子,中间以一个空格隔开,该功能可以速度识别这一串英文句子中每个单词的长度。下面请你编写代码以实现该功能。
注:每个单词之间以空格作为分界,如果有标点符号(如连字符,逗号),标点符号算作与之相连的词的一部分。没有被空格间开的符号串,都算作单词。

输入描述 Input Description

输入为一行,为一串字符串,包含若干个单词,最少1个单词,最多100个单词,每个单词之间用一个空格隔开,且总的字符串长度不超过1000。

输出描述 Output Description

输出为一行,包含若干个整数,每个整数代表对应单词的长度,每个整数之间以一个空格隔开。

样例输入 Sample Input

I have a dream.

样例输出 Sample Output

1 4 1 6

string s;
    int cnt=0,cnt1=0;
    getline(cin,s);
    for(int i=0;i<=s.size()-1;i++){
        if(s[i]!=' '){
            cnt++;
        }
        if(s[i]==' '){
            cnt1=cnt;
            cout<<cnt1<<" ";
            cnt1=0;
            cnt=0;
        }
    }

我的代码

望大神解答


0
已采纳
李牧晓
李牧晓
中级天翼
中级天翼

孩子我来了

字符串 a;
整形 p=0;
空格输入(cin,a);
循环(int i=0;i<a.size();i++){
    如果(a[i]==' '){
        输出<<p<<" ";
        p=0;
    }
    否则{
        p++;
    }
}
输出<<p;

采纳!!!

0
王文博
王文博
缔造者之神
缔造者之神

巧妙方法:

w

hile

(cin

>

>

s

)

co

ut<

<s.

si

ze

()

<

<

" "

;

望采纳!

0
李宜和
李宜和
高级启示者
高级启示者

主函数:
定义sum,赋值为零
    定义字符串a
    输入a
    循环遍历a{
        如果a[i]是空格 
            输出sum
            sum归零
        否则
            sum不断加1

    }
    输出sum

 

我要回答