首页 > 代码库 > 华科机考:统计单词
华科机考:统计单词
时间限制: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; }
华科机考:统计单词
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。