输入若干个单词,输出它们的平均长度。单词只包含大写字母和小写字母,用一个或多个空格隔开。c语言代码实现
时间: 2024-03-11 14:48:36 浏览: 110
以下是一个简单的 C 语言程序,用于计算输入字符串中单词的平均长度:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[1000];
int len = 0, word_count = 0;
printf("请输入字符串:");
fgets(str, 1000, stdin);
for (int i = 0; i < strlen(str); i++) {
if (str[i] != ' ' && str[i] != '\n') {
len++;
} else {
word_count++;
}
}
printf("平均单词长度为:%.2f\n", (float)len / word_count);
return 0;
}
```
该程序从标准输入读取一个字符串,然后遍历字符串中的每个字符。如果遇到空格或换行符,则将单词计数器加 1,并将字符计数器清零。最后,程序将字符计数器除以单词计数器,得到平均单词长度,并将其输出到标准输出。
相关问题
输入若干个单词,输出它们的平均长度。单词只包含大写字母和小写字母,用一个或多个空格隔开。java
可以按照以下步骤实现:
1. 从控制台读取输入的字符串。
2. 使用split()方法将字符串分割成单词数组。
3. 遍历单词数组,累加每个单词的长度。
4. 计算平均长度并输出结果。
以下是Java代码示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
String[] words = input.split("\\s+");
int totalLength = 0;
for (String word : words) {
totalLength += word.length();
}
double averageLength = (double) totalLength / words.length;
System.out.printf("平均长度为 %.2f\n", averageLength);
}
}
```
输入示例:
```
hello world
```
输出示例:
```
平均长度为 5.50
```
用c语言编程:输入若干个单词,输出它们的平均长度。单词只包含大写字母和小写字母,用一个或多个空格隔开。
以下是使用 C 语言实现计算平均单词长度的代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
int count = 0;
double sum = 0.0;
char c;
printf("请输入若干个单词,以空格分隔:");
// 读取输入
while ((c = getchar()) != '\n') {
if (isspace(c)) { // 如果是空格,单词数加一
count++;
} else {
sum++; // 否则,单词长度加一
}
}
count++; // 最后一个单词没有空格,需要加一
// 输出平均单词长度
if (count == 0) {
printf("没有输入任何单词!\n");
} else {
printf("平均单词长度为:%.2f\n", sum/count);
}
return 0;
}
```
该代码使用了 getchar() 函数来读取输入,并使用 isspace() 函数判断是否是空格。时间复杂度为 O(N),空间复杂度为 O(1)。
阅读全文