21xrx.com
2025-04-27 20:34:30 Sunday
文章检索 我的文章 写文章
C++编程:统计英文字母数字
2023-07-05 13:46:10 深夜i     11     0
C++编程 统计 英文字母 数字 计算

在C++编程中,我们经常需要对输入的字符串进行分析和处理。其中一个常见的问题就是统计字符串中的英文字母和数字的个数。

首先,我们可以使用C++的头文件 中的函数来判断一个字符是否是英文字母或数字。具体地,isalpha()函数可判断是否为英文字母,isdigit()函数可判断是否为数字。在遍历字符串时,我们可以使用for循环来逐个检查每个字符并累加计数器,示例代码如下:

#include <iostream>
#include <ctype.h>
using namespace std;
int main() {
  string s;
  int alpha_count = 0, digit_count = 0;
  cout << "请输入一个字符串:";
  getline(cin, s);
  for (int i = 0; i < s.length(); i++) {
    if (isalpha(s[i])) alpha_count++;
    if (isdigit(s[i])) digit_count++;
  }
  cout << "该字符串中共有" << alpha_count << "个字母," << digit_count << "个数字。" << endl;
  return 0;
}

此外,我们还可以使用C++标准库中的算法库来完成统计工作。例如,用count_if()函数配合lambda表达式可以更简洁地实现相同的功能,示例代码如下:

#include <iostream>
#include <algorithm>
using namespace std;
int main() {
  string s;
  cout << "请输入一个字符串:";
  getline(cin, s);
  int alpha_count = count_if(s.begin(), s.end(), [](char c){return isalpha(c);});
  int digit_count = count_if(s.begin(), s.end(), [](char c){return isdigit(c);});
  cout << "该字符串中共有" << alpha_count << "个字母," << digit_count << "个数字。" << endl;
  return 0;
}

无论是哪种方法,都应该可以实现对字符串中内容的计数。这对于我们解析输入数据或处理文本文件时都是一项非常基本的操作,掌握起来会对编程实践有帮助。

  
  

评论区