码迷,mamicode.com
首页 > 其他好文 > 详细

华科机考:统计单词

时间:2017-03-30 22:46:35      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:题目   main   区分   end   不能   int   空间   文字   cout   

   

时间限制:1秒       空间限制:32768K         

题目描述

编一个程序,读入用户输入的,以“.”结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。 (凡是以一个或多个空格隔开的部分就为一个单词)

输入描述: 输入包括1行字符串,以“.”结束,字符串中包含多个单词,单词之间以一个或多个空格隔开。

 

输出描述: 可能有多组测试数据,对于每组数据, 输出字符串中每个单词包含的字母的个数。

输入例子: hello how are you.

 

输出例子: 5 3 3 3

 

要点:1.扫描该串,如果当前字符不是空格也不是.号就自加,在此基础上,如果下一个字符是空格或者是.号就输出该单词长度

           (具体实现的话,就用两个if嵌套就ok了)

         2.输出的末尾不能有空格

          (可以采用一个标志量来区分是否为带一个输出的单词长度)

代码:

#include <iostream>

using namespace std;

int main(){
  string str;
  int ans,flag;
    while(getline(cin,str)){
       ans=0;
       flag=0;
      for(int i=0;i<str.size()-1;i++){
         if(str[i]!= &&str[i]!=.){
            ans++;
             if(str[i+1]== ||str[i+1]==.){
                if(flag==0){
                 cout<<ans;
                 flag=1;
                }
                else
                 cout<<" "<<ans;
               ans=0;
             }
         }
      }
     cout<<endl;
    }
  return 0;
}

 

华科机考:统计单词

标签:题目   main   区分   end   不能   int   空间   文字   cout   

原文地址:http://www.cnblogs.com/mlgjb/p/6648846.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!