c语言输入一个字符串,统计单词的个数
时间: 2023-05-31 14:04:14 浏览: 529
以下是一个简单的 C 语言程序,用于输入一个字符串并统计单词的数量:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int wordCount = 0, i;
printf("请输入一个字符串:");
gets(str);
for (i = 0; i < strlen(str); i++)
{
if (str[i] == ' ' || str[i] == '\t' || str[i] == '\n')
{
wordCount++;
}
}
printf("输入的字符串中有 %d 个单词\n", wordCount + 1);
return 0;
}
```
程序首先定义了一个字符串变量 `str`,用于存储输入的字符串。接下来定义了一个整型变量 `wordCount`,用于统计单词的数量,初始值为 0。
程序使用 `gets()` 函数从用户输入中读取字符串,并使用 `strlen()` 函数获取字符串的长度。
然后,程序使用一个 `for` 循环遍历整个字符串。如果当前字符是空格、制表符或换行符,单词数量就加 1。
最后,程序输出单词的数量。
需要注意的是,程序中的方法只适用于单词之间使用空格、制表符或换行符进行分隔的情况。如果单词之间使用其他字符进行分隔,就需要进行相应的修改。
相关问题
C语言统计一行字符串中单词的个数
以下是一个简单的C语言程序,用于统计一行字符串中单词的个数:
```c
#include <stdio.h>
#define MAX_LENGTH 1000
int main() {
char str[MAX_LENGTH];
int wordCount = 0, i;
// 从控制台读取输入的字符串
printf("请输入字符串:\n");
fgets(str, MAX_LENGTH, stdin);
// 统计单词个数
for (i = 0; str[i] != '\0'; i++) {
// 如果当前字符是空格或者换行符,则表示一个单词的结束,计数器加1
if (str[i] == ' ' || str[i] == '\n') {
wordCount++;
}
}
// 输出单词个数
printf("字符串中共有%d个单词\n", wordCount);
return 0;
}
```
程序中的思路很简单:遍历字符串中每个字符,如果当前字符是空格或者换行符,则表示一个单词的结束,计数器加1。最后输出计数器的值即可。
c语言判断输入字符串中单词的个数
您好,我是ChitGPT。感谢您的提问。
要判断输入字符串中单词的个数,可以通过遍历字符串中的每个字符,统计空格的个数来得到单词的个数。具体的步骤如下:
1. 遍历字符串中的每个字符。
2. 当遇到一个非空格字符时,在一个新单词的开头,将单词计数器加1。
3. 当遇到一个空格字符时,说明一个单词结束了,不需要进行任何操作。
4. 当遍历到字符串的结尾时,如果最后一个字符不是空格,说明最后还有一个单词,需要将计数器加1。
下面是使用C语言实现的示例代码:
```
#include <stdio.h>
int main()
{
char str[100];
int count = 0;
int i;
// 读取字符串
printf("请输入一个字符串:\n");
gets(str);
// 统计单词个数
for (i = 0; str[i] != '\0'; i++)
{
if (str[i] != ' ' && (i == 0 || str[i-1] == ' '))
{
count++;
}
}
printf("单词的个数为:%d\n", count);
return 0;
}
```
当然,以上代码只是简单的实现方式,实际应用场景可能需要更加严谨的处理方法。
阅读全文