c语言统计单词平均长度,C++ 字符数组 - 统计一段英文单词的平均长度

题目如下:

1、求输入英文句子单词的平均长度。(以空格,逗号,感叹号,问号等符号隔开单词,最后以实心句号结束。)

如:s表示字母数量,count表示单词数量,字母串可以直接应用下标

what is your name? my name is lilei.单词平均长度3.4

初看很简单啊,想了想,便有思路了:先读取字符串,再一个for取每一个char字符。循环判断是否为一个新单词,在每一个新单词结束前,统计单词数量,结束时 总值++,单词个数++。

代码如下:

#include

#include

using namespace std;

int main()

{

string str;

getline(cin,str);

int index =1;

int SUM_temp = 0;

int SUM = 0;

for(int i=0;i

{

char c = str[i];

if(c == '.')

break;

if(c == ' ' || c == '?' || c == '!' || c == ',')

{

SUM += SUM_temp;

SUM_temp = 0;

index++;

}else

SUM_temp++;

}

SUM += SUM_temp;

cout<

system("pause");

return 0;

}

其中:

str.size()可以返回一个str的长度

string str = "STR";

str.size(); //Return 3

getline(cin,str);读取一行字符串(不同于cin,cin会在读取空格后结束)

>>123 4

getline(cin,str); //123 4

cin>>str; //123

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值