编程输入一行文本,计算这行文本的单词平均长度。假设每个单词用至少一个空格或者标点(英文逗号、句号)隔开。C++
时间: 2023-04-01 13:04:14 浏览: 113
我可以回答这个问题。首先,我们需要将输入的文本按照空格或标点符号进行分割,得到每个单词。然后,计算所有单词的长度之和,再除以单词的总数,即可得到单词平均长度。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char text[100];
printf("请输入一行文本:\n");
fgets(text, sizeof(text), stdin);
int len = strlen(text);
int count = ;
int sum = ;
for (int i = ; i < len; i++) {
if (text[i] == ' ' || text[i] == ',' || text[i] == '.') {
if (i > && text[i-1] != ' ' && text[i-1] != ',' && text[i-1] != '.') {
count++;
}
} else {
sum++;
}
}
if (len > && text[len-1] != ' ' && text[len-1] != ',' && text[len-1] != '.') {
count++;
}
if (count > ) {
float avg = (float)sum / count;
printf("单词平均长度为:%.2f\n", avg);
} else {
printf("没有输入单词\n");
}
return ;
}
```
注意,这个代码只是一个示例,可能还有一些边界情况没有考虑到,需要根据实际情况进行修改和完善。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)