21xrx.com
2024-12-23 00:18:39 Monday
登录
文章检索 我的文章 写文章
如何使用C语言统计输入字符串中的英文字母、数字和其他字符
2023-06-14 19:55:06 深夜i     --     --
C语言 字符统计 isalpha() isdigit() ispunct()

C语言是一种广泛用于计算机编程的编程语言,它可以进行各种操作,包括字符串操作。在本文中,我们将探讨如何使用C语言统计输入字符串中的英文字母、数字和其他字符。

首先,我们需要使用标准C库中的函数来读取输入的字符串。可以使用fgets()函数从标准输入(stdin)读取一行字符,其语法如下:

fgets(str, n, stdin);

其中,str是存储输入字符的字符串指针,n是最大输入字符数。fgets()函数会自动在输入字符串的结尾添加一个空字符。

接下来,我们需要遍历输入的字符串,对其中的每个字符进行分类。可以使用C语言中的字符分类函数isalpha()、isdigit()和ispunct()来判断字符的类型。isalpha()函数用于判断一个字符是否为字母,isdigit()函数用于判断一个字符是否为数字,ispunct()函数用于判断一个字符是否为标点符号。

在遍历字符的过程中,我们可以使用计数器来记录不同类型字符出现的次数,最终输出结果。

以下是使用C语言统计输入字符串中的英文字母、数字和其他字符的完整代码:


#include

#include

int main() {

  char str[100];

  int i, alpha, digit, punct, other;

  // 读取一行字符

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

  fgets(str, sizeof(str), stdin);

  // 统计字符的类型

  alpha = digit = punct = other = 0;

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

    if (isalpha(str[i]))

      alpha++;

    else if (isdigit(str[i]))

      digit++;

    else if (ispunct(str[i]))

      punct++;

    else

      other++;

  }

  // 输出结果

  printf("输入的字符串中共有 %d 个字母,%d 个数字,%d 个标点符号,%d 个其他字符\n",

      alpha, digit, punct, other);

  return 0;

}

通过使用上述方法,我们便可以快速而准确地统计输入字符串中的英文字母、数字和其他字符了。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复