输入若干个单词,输出它们的平均长度,保留两位小数。单词只包含大写字母和小写字母,单词前后都可能有一个或者多个空格隔开。请使用c语言并用循环和数组实现。
时间: 2023-05-21 07:01:26 浏览: 121
js保留两位小数方法总结
非常感谢您的提问!以下是我的回答:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[1000];
int len = 0, count = 0;
double avg = 0.0;
fgets(str, 1000, stdin); // 从标准输入读取字符串
for (int i = 0; i < strlen(str); i++) {
if (str[i] != ' ' && str[i] != '\n') {
len++;
} else if (len > 0) {
count++;
avg += len;
len = 0;
}
}
if (len > 0) {
count++;
avg += len;
}
if (count > 0) {
avg /= count;
}
printf("%.2lf\n", avg); // 输出平均长度,保留两位小数
return 0;
}
```
这个程序可以读取一行字符串,然后计算其中单词的平均长度。我们使用一个循环来遍历字符串中的每个字符,如果当前字符不是空格或换行符,就将单词长度加一;否则,如果单词长度大于零,就将单词计数加一,并将单词长度累加到平均长度中。最后,如果最后一个单词没有被计算,就将它计入平均长度中。最后,我们将平均长度除以单词数,就得到了最终的平均长度。
阅读全文