21xrx.com
2024-11-22 13:34:44 Friday
登录
文章检索 我的文章 写文章
学习C语言:如何输入一行字符并统计其中单词个数
2023-06-15 10:02:58 深夜i     --     --
C语言 输入一行字符 统计单词个数

C语言是一种非常流行的程序设计语言,它广泛应用于系统软件和应用软件的开发。当我们写C语言程序时,经常需要从键盘输入一行字符,并对其中的单词个数进行统计。

那么,C语言如何输入一行字符呢?我们可以使用fgets()函数来实现。fgets()函数可以从标准输入设备中读取指定长度的字符串,并保存在指定缓冲区中。

例如,下面这段代码可以输入一行字符并输出:

#include

#define MAX_LENGTH 100

int main() {

  char str[MAX_LENGTH];

  printf("请输入一行字符:");

  fgets(str, MAX_LENGTH, stdin);

  printf("%s", str);

  return 0;

}

在上面的代码中,我们定义了一个字符数组str来保存输入的字符串,使用printf()函数输出提示信息,在输入时使用fgets()函数读取输入的字符串,并使用printf()函数输出输入的字符串。

接下来,我们需要统计输入的字符串中单词的个数。一个单词被定义为由空格或制表符分隔的字符序列。我们可以使用循环遍历字符串中的每个字符,当遇到空格或制表符时,即可认为一个单词结束,并将单词个数加一。

下面是统计单词个数的代码:

#include

#define MAX_LENGTH 100

int main() {

  char str[MAX_LENGTH];

  int i, count = 0;

  printf("请输入一行字符:");

  fgets(str, MAX_LENGTH, stdin);

  for (i = 0; str[i] != '\n'; i++) {

    if (str[i] == ' ' || str[i] == '\t') {

      count++;

      while (str[i] == ' ' || str[i] == '\t') {

        i++;

      }

    }

  }

  if (i > 0 && str[i-1] != ' ' && str[i-1] != '\t') {

    count++;

  }

  printf("单词个数为:%d\n", count);

  return 0;

}

在上面的代码中,我们定义了一个整型变量count来保存单词个数,并使用循环遍历输入的字符串中的每个字符,当遇到空格或制表符时,即可认为一个单词结束,将count加一,并跳过单词之间的空格或制表符。如果最后一个字符不是空格或制表符,那么最后一个单词也应该被计数。

文章

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复
    相似文章