用C语言解答下面问题:每个句子由多个单词组成,句子中的每个单词的长度都可能不一样,我们假设每个单词的长度 Ni 为该单词的重量,你需要做的就是给出整个句子的平均重量 V。+ 解答要求时间限制: 1000ms,内存限制: 100MB.入+ 输入只有一行,包含一个字符串 5(长度不会超过 100),代表整个句子,句子中只包含大小写的英文字母,每个单词之间有一个空格。+ 输出+ 输出句子S的平均重量 V(四舍五入保留两位小数)。+ 样例, 输入样例 1 复制。 Who Love Solo 输出样例 1* 3.674
时间: 2024-03-07 20:50:46 浏览: 332
以下是使用 C 语言的解答:
```
#include <stdio.h>
#include <string.h>
int main() {
char sentence[101];
fgets(sentence, 101, stdin); // 读取输入的句子
int word_count = 1; // 单词数量初始化为 1,因为最后一个单词后面没有空格
int word_length_sum = 0;
for (int i = 0; i < strlen(sentence); i++) {
if (sentence[i] == ' ') {
word_count++;
} else {
word_length_sum++;
}
}
double average_weight = (double) word_length_sum / word_count;
printf("%.2lf", average_weight);
return 0;
}
```
解释:
首先读取输入的句子,使用 `fgets()` 函数可以保证不会超出字符串长度。然后初始化单词数量为 1,因为最后一个单词后面没有空格。使用一个循环遍历句子中的每个字符,如果是空格则单词数量加 1,否则单词长度加 1。最后计算平均重量,即单词长度总和除以单词数量。最后使用 `printf()` 函数输出结果,保留两位小数。
阅读全文