C++统计中英文大小写字母、数字、空格及其他字符个数的方法

C++统计中英文大小写字母、数字、空格及其他字符个数的方法

以下是一种用C++编写的统计中英文大小写字母、数字、空格及其他字符个数的方法的完整攻略。

步骤1:包含必要的头文件

首先,我们需要包含 <iostream><cctype> 头文件,以便使用C++的输入输出功能和字符处理函数。

#include <iostream>
#include <cctype>

步骤2:定义统计函数

接下来,我们定义一个函数 countCharacters,该函数接受一个字符串作为参数,并返回一个包含统计结果的结构体。

struct CharacterCount {
    int uppercaseLetters;
    int lowercaseLetters;
    int digits;
    int spaces;
    int otherCharacters;
};

CharacterCount countCharacters(const std::string& str) {
    CharacterCount count = {0, 0, 0, 0, 0};

    for (char c : str) {
        if (isupper(c)) {
            count.uppercaseLetters++;
        } else if (islower(c)) {
            count.lowercaseLetters++;
        } else if (isdigit(c)) {
            count.digits++;
        } else if (isspace(c)) {
            count.spaces++;
        } else {
            count.otherCharacters++;
        }
    }

    return count;
}

步骤3:测试示例

现在,我们可以使用 countCharacters 函数来统计一个字符串中各种字符的个数。

int main() {
    std::string str = \"Hello, 123 World!\";
    CharacterCount count = countCharacters(str);

    std::cout << \"Uppercase letters: \" << count.uppercaseLetters << std::endl;
    std::cout << \"Lowercase letters: \" << count.lowercaseLetters << std::endl;
    std::cout << \"Digits: \" << count.digits << std::endl;
    std::cout << \"Spaces: \" << count.spaces << std::endl;
    std::cout << \"Other characters: \" << count.otherCharacters << std::endl;

    return 0;
}

输出结果将会是:

Uppercase letters: 2
Lowercase letters: 8
Digits: 3
Spaces: 2
Other characters: 3

示例说明

示例1:

输入字符串:\"Hello, 123 World!\"

输出结果:

Uppercase letters: 2
Lowercase letters: 8
Digits: 3
Spaces: 2
Other characters: 3

解释:输入字符串中有2个大写字母(H和W),8个小写字母(e、l、l、o、o、r、l、d),3个数字(1、2、3),2个空格和3个其他字符(逗号、空格和感叹号)。

示例2:

输入字符串:\"OpenAI GPT-3.5 Turbo\"

输出结果:

Uppercase letters: 6
Lowercase letters: 10
Digits: 3
Spaces: 2
Other characters: 2

解释:输入字符串中有6个大写字母(O、A、I、G、P、T),10个小写字母(p、e、n、A、I、G、P、T、u、r、b、o),3个数字(3、5、3),2个空格和2个其他字符(连字符和空格)。

希望这个攻略对你有帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++统计中英文大小写字母、数字、空格及其他字符个数的方法 - Python技术站

(0)
上一篇 2023年8月18日
下一篇 2023年8月18日

相关文章

  • 开源Web自动化测试工具Selenium IDE

    开源Web自动化测试工具Selenium IDE 在现代软件开发中,测试是不可或缺的一步。然而,手动执行测试步骤是极其耗时和无趣的,这就是为什么自动化测试工具如此重要的原因。在Web应用程序的自动化测试中,Selenium是最广泛使用的工具之一,它是一个完整的测试框架,嵌入到开源项目中,被用于模拟用户的交互行为。 Selenium IDE是一个Seleniu…

    其他 2023年3月28日
    00
  • MySQL 8.0.28 安装配置图文教程

    下面是关于MySQL 8.0.28安装配置的完整攻略。 1.前言 MySQL是比较常用的关系型数据库,本文将介绍如何在Windows系统下安装MySQL 8.0.28并配置。 2.下载MySQL 首先,要到MySQL官网下载MySQL Community Server 8.0.28,下载链接如下:https://dev.mysql.com/downloads…

    other 2023年6月20日
    00
  • 苹果 iOS / iPadOS 16.3开发者预览版 Beta 2 发布

    苹果 iOS / iPadOS 16.3开发者预览版 Beta 2 发布攻略 简介 苹果iOS/iPadOS 16.3开发者预览版Beta 2已经发布,这里提供一份完整的攻略以帮助开发者顺利安装。本攻略旨在帮助开发者了解Beta 2的所有变化、下载和安装该版本到设备或模拟器。 Beta 2的变化 Beta 2的变化主要是一些修复和改进: 修复了之前报告的一些…

    other 2023年6月26日
    00
  • Android开发之ImageSwitcher相册功能实例分析

    下面是关于“Android开发之ImageSwitcher相册功能实例分析”的完整攻略: 一、ImageSwitcher简介 ImageSwitcher是一个简单的视图工具,能够允许用户切换图片,一般使用在简单的图片展示功能中。 ImageSwitcher继承自ViewSwitcher类,提供了图片切换时的渐变效果。 二、ImageSwitcher的使用 1…

    other 2023年6月26日
    00
  • Web前端和JAVA应该学哪个?哪个就业形势更胜一筹?

    Web前端和JAVA学习攻略 1. Web前端学习攻略 Web前端开发是构建用户界面的技术,涉及HTML、CSS和JavaScript等技术。以下是学习Web前端的攻略: a. 学习HTML和CSS HTML是网页的基础,用于定义网页结构。学习HTML标签、元素和属性,以及如何创建网页布局。 CSS用于控制网页的样式和布局。学习CSS选择器、样式属性和盒模型…

    other 2023年7月27日
    00
  • jQuery自定义元素右键点击事件(实现案例)

    下面详细讲解“jQuery自定义元素右键点击事件(实现案例)”的完整攻略。 一、什么是jQuery自定义元素右键点击事件? 在前端开发过程中,我们经常需要对页面的某些元素添加右键菜单,例如右键菜单的功能可以包括:复制、粘贴、保存等操作。而使用jQuery可以轻松地为元素添加右键点击事件,实现自定义的右键菜单。 二、步骤 使用jQuery选择需要添加右键菜单的…

    other 2023年6月27日
    00
  • Java数据结构和算法之冒泡,选择和插入排序算法

    Java数据结构和算法之冒泡、选择和插入排序算法 冒泡排序算法 算法思路 冒泡排序是一种基础的排序算法,它通过比较相邻元素的大小并交换位置,将最大(或最小)的元素逐步“冒泡”到序列的最后,从而完成排序。 具体地,冒泡排序的过程如下: 从序列的第一个元素开始,依次比较相邻的两个元素,如果前面的元素大于后面的元素,则交换它们的位置。 继续依次比较相邻的元素,直到…

    other 2023年6月27日
    00
  • Android开发ListView中下拉刷新上拉加载及带列的横向滚动实现方法

    Android开发ListView中下拉刷新上拉加载及带列的横向滚动实现方法 1. 概述 ListView是Android中非常重要的控件之一,我们很多应用都会使用到它。但默认的ListView并不支持下拉刷新和上拉加载更多的功能,而且也不支持横向滚动。本文将详细介绍如何在Android开发ListView中实现下拉刷新、上拉加载和带列的横向滚动。 2. 下…

    other 2023年6月25日
    00
合作推广
合作推广
分享本页
返回顶部