华为OD机试真题B卷 Java 实现【统计字符】,附详细解题思路

news2024/11/24 16:03:11

在这里插入图片描述

一、题目描述

输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。

数据范围:输入的字符串长度满足 1 \le n \le 1000 \1≤n≤1000 。

二、输入描述

输入一行字符串,可以有空格。

三、输出描述

统计其中英文字符,空格字符,数字字符,其他字符的个数。

四、解题思路

  1. 读取输入的一行字符串 s;
  2. 初始化变量 letters、spaces、digits 和 others 分别表示英文字母、空格、数字和其他字符的个数,初始值都为 0;
  3. 使用循环遍历字符串 s的每个字符:
    • 如果字符是英文字母,使用 Character.isLetter© 判断,将 letters 自增 1;
    • 如果字符是数字,使用 Character.isDigit© 判断,将 digits 自增 1;
    • 如果字符是空格,使用 Character.isSpaceChar© 判断,将 spaces 自增 1;
    • 如果字符不是英文字母、数字或空格,则将 others 自增 1;
  4. 循环结束后,输出 letters、spaces、digits 和 others 的值,分别表示英文字母、空格、数字和其他字符的个数;

五、Java算法源码

public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    while (scanner.hasNext()) {
        String s = scanner.nextLine();
        //统计其中英文字符,空格字符,数字字符,其他字符的个数
        int letters = 0;
        int spaces= 0;
        int digits = 0;
        int others = 0;
        int len = s.length();
        for(int i = 0; i < len; i++){
            char c = s.charAt(i);
            if(Character.isLetter(c)){
                letters++;
            }else if(Character.isDigit(c)){
                digits++;
            }else if(Character.isSpaceChar(c)){
                spaces++;
            }else{
                others++;
            }
        }

        // 统计其中英文字符,空格字符,数字字符,其他字符的个数
        System.out.println(letters);
        System.out.println(spaces);
        System.out.println(digits);
        System.out.println(others);
    }
}

六、效果展示

在这里插入图片描述


🏆下一篇:华为OD机试真题 Java 实现【组合出合法最小数】【2023Q1 200分】,附详细解题思路

🏆本文收录于,华为OD机试2023(Java)

本专栏包含了最新最全的2023年华为OD机试真题,有详细的分析和Java解答。已帮助1000+同学顺利通过OD机考。专栏会持续更新,每天在线答疑。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/587001.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python中如何空一行

Python中如何空一行 在Python编程中&#xff0c;许多情况下我们需要在输出内容的时候空出一行。今天我们将介绍如何在Python中实现空一行的方法。 方法1&#xff1a;使用print()函数 在Python中&#xff0c;我们可以使用print()函数打印空行。我们只需在print()函数中输入两…

并发编程 原子性 可见性 有序性

并发编程的三个重要特性 原子性所谓原子性是指在一次的操作或者多次操作中&#xff0c;要么所有的操作全部都得到了执行并且不会受到任何因素的干扰而中断&#xff0c;要么所有的操作都不执行。可见性可见性是指&#xff0c;当一个线程对共享变量进行了修改&#xff0c;那么另…

chatgpt赋能python:Python中如何合并列表-详细教程

Python中如何合并列表 - 详细教程 在Python编程中&#xff0c;有时候需要把两个或多个列表合并成一个单一的列表&#xff0c;以便更好地进行数据处理。Python中有几种方法可以实现列表合并&#xff0c;本文将介绍其中的三种方法。 1. 使用“”符号 最常见的方法是使用“”符…

InsCode AI 创作助手:源于 CSDN 的 AI 创作助手,不一样的创作体验

文章目录 &#x1f4cb;前言&#x1f3af;AIGC 时代的产物&#x1f3af;InsCode AI 创作助手体验&#x1f3af;一些感受和建议&#x1f9e9;感受&#x1f9e9;建议&#xff08;个人看法&#xff09; &#x1f4dd;最后 &#x1f4cb;前言 是的没错&#xff0c;CSDN AI 写作助手…

Vue组件化开发

1. 认识组件 1.1 基础示例 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widt…

STM32CubeIDE + HAL + STM32f103C8T6 系列教程1 ---板载PC13LED闪烁

STM32CubeIDE HAL STM32f103C8T6 系列教程1 --- 板载PC13LED闪烁 引言硬件关于开发板[^2]控制器内置存储器原理图 硬件连线硬件连接表硬件连线图 软件STM32CubeIDE下载及安装Stm32CubeIDE设置补全快捷键和主题新建一个工程选择开发板核心芯片型号设置工程相关参数STM32CubeMX…

最热门高效的Node.JS开源第三方开发库和特点(持续更新......)

目录 1. Express 2. Socket.io 3. Mongoose 4. Passport 5. Async 6. PM2 7. Nodemailer 8. Request 9. Cheerio 10. Lodash 11. Bluebird 12. Winston 13. Socket.io-client 14. Node-sass 15. Moment 16. Gulp 17. Grunt 18. Chai 19. Sinon 20. Nodemon…

Java线程之间如何通信的,有哪些方式?

线程之间的通信方式主要有以下几种&#xff1a; 共享变量&#xff1a;线程之间可以通过共享变量来进行通信。不同的线程可以共享同一个变量&#xff0c;并在变量上进行读写操作。需要注意的是&#xff0c;共享变量可能会引发线程安全问题&#xff0c;需要通过同步机制来确保线程…

chatgpt赋能Python-python中怎么导入numpy

介绍 Python是一种广泛使用的编程语言&#xff0c;具有许多内建功能和模块&#xff0c;让开发者能够快速地编写代码。然而&#xff0c;虽然能够实现许多计算&#xff0c;但是原始Python本身并不足够处理各种科学和数字计算上需要的高效性&#xff0c;因此numpy这个开源的Pytho…

chatgpt赋能python:Python中如何对文本进行修改

Python中如何对文本进行修改 在Python编程中&#xff0c;涉及到文本操作的场合并不少见。我们可能需要读取文件、解析HTML网页、处理字符串等等。而在对文本进行操作的过程中&#xff0c;修改文本是非常常见的需求。本文将介绍Python中对文本进行修改的几种基本方法。 1. 字符…

实验篇(7.2) 04. 映射内网服务器到公网IP ❀ 远程访问

【简介】由于服务器的IP是内网地址&#xff0c;所以无法从公网直接访问服务器。要想远程访问服务器&#xff0c;最简单的办法就是将服务器映射到公网IP&#xff0c;然后通过公网IP加端口号的方式进行访问。 实验要求与环境 OldMei集团深圳总部部署了一台服务器&#xff0c;用来…

微服务实战项目-学成在线-内容管理模块(有项目实战实现)

内容管理模块 1 模块需求分析 1.1 什么是需求分析 在百度百科中对需求分析的定义如下&#xff1a; 需求分析也称为软件需求分析、系统需求分析或需求分析工程等&#xff0c;是开发人员经过深入细致的调研和分析&#xff0c;准确理解用户和项目的功能、性能、可靠性等具体要…

Golang每日一练(leetDay0081) 基本计算器I\II Basic Calculator

目录 224. 基本计算器 Basic Calculator &#x1f31f;&#x1f31f;&#x1f31f; 227. 基本计算器 II Basic Calculator &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Rust每日一练 专栏 Golang每日一练 专栏 Python每日一练 专栏 C/C…

OpenAI API最新速查表;轻松制作数字分身;8个ChatGPT「作弊」策略;微软提示工程官方教程 | ShowMeAI日报

&#x1f440;日报&周刊合集 | &#x1f3a1;生产力工具与行业应用大全 | &#x1f9e1; 点赞关注评论拜托啦&#xff01; &#x1f916; The OpenAI API in Python 最新速查表 ShowMeAI知识星球资源编码&#xff1a;R102 大语言模型的发展&#xff0c;正在推动 OpenAI API…

chatgpt赋能python:Python中的宏定义及其使用

Python中的宏定义及其使用 Python是一种高级编程语言&#xff0c;其灵活性和可读性深受程序员的喜爱。Python中的宏定义是一种强大且实用的编程特性&#xff0c;在编写复杂程序时可以提高程序的可重用性和可扩展性。 什么是宏&#xff1f; 在计算机编程中&#xff0c;宏是一…

chatgpt赋能python:Python中怎么安装包:完整指南

Python中怎么安装包&#xff1a;完整指南 Python是一种高级编程语言&#xff0c;被广泛应用于数据科学、Web开发、自动化、AI和机器学习等领域。Python的强大功能得益于它的包管理系统&#xff0c;这意味着开发者可以在自己的项目中使用已经编写好的代码。在本文中&#xff0c…

IaaS、PaaS、SaaS、DaaS的区别

IasS - 基础设施即服务 IaaS是Infrastructure as a server的缩写&#xff0c;意思是基础设施即服务。云端公司把IT环境的基础设施建设好&#xff0c;然后直接对外出租硬件服务器或者虚拟机。消费者可以利用所有计算基础设施&#xff0c;包括处理CPU、内存、存储、网络和其它基…

电容笔哪个牌子好用?苹果平板笔推荐

随着国内消费水平的上升&#xff0c;大家开始注重环保。开始使用起了无纸化书写&#xff0c;而无纸化的书写最离不开电容笔。但市面上的电容笔品牌大同小异&#xff0c;而每个人的使用体验都不同。所以今天给大家科普一下挑选电容笔的注意事项和推荐几款市面上好用的电容笔&…

116.移除指定元素 removeSpecifyElement

文章目录 题目描述解题思路代码详解运行截图 题目描述 题目链接 给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输…

Rust每日一练(Leetday0015) 字符串相乘、通配符匹配、跳跃游戏II

目录 43. 字符串相乘 Multiply Strings &#x1f31f;&#x1f31f; 44. 通配符匹配 Wildcard Matching &#x1f31f;&#x1f31f;&#x1f31f; 45. 跳跃游戏 II Jump Game II &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Rust每日一…