华为机试精华:2022最新C/C++编程实战题目

华为机试真题2022版包含了两道题目,旨在考察考生对C/C++编程语言基础的理解和应用能力。以下是这两道题目的详细解析:
1. 题目一:HJ1 - 计算字符串最后一个单词的长度
描述:此题要求考生编写一个程序,输入一个不超过5000个字符且末尾无空格的字符串,计算并输出最后一个单词的长度。注意,单词定义为由空格分隔的连续字符序列。
C代码解答:
这段代码首先通过`fgets`函数读取用户输入的字符串,然后计算字符串长度(不包括换行符)。接着,从字符串末尾向前遍历,遇到空格就停止计数,直到找到字符串的最后一个单词。最后,输出计数结果。
2. 题目二:HJ2 - 计算字符在字符串中的出现次数
描述:本题考查的是统计字符在输入字符串中的出现次数,无论输入的字符是大写还是小写,程序都应忽略大小写差异。输入包含一个由字母、数字和空格组成的字符串,以及一个字符作为查找目标。
C++代码解答:
这段代码使用了`getline`函数获取整个字符串,然后使用`getchar`获取单个字符并转换为小写进行比较。利用`auto`迭代器遍历字符串,当找到与目标字符匹配的小写版本时,计数器`n`递增。最后输出字符的出现次数。
总结:
这两道题目都是华为机试中常见的基础编程题目,涉及到了字符串处理和字符计数的基本算法。对于准备华为机试的考生来说,理解和掌握这类问题能够提升编程技能,尤其是对字符串操作和循环结构的运用。在实际编程过程中,理解并能灵活运用标准库函数如`fgets`, `strlen`, `getline`, 和`tolower`等,对于解决此类问题至关重要。同时,这类题目也强调了对输入数据范围和边界条件的考虑,比如字符串长度限制和字符统计时的忽略大小写要求。
相关推荐
5393 浏览量
587 浏览量
2025-03-09 上传
5572 浏览量
204 浏览量
188 浏览量


大个儿卫
- 粉丝: 2

最新资源
- Windows环境下Hadoop配置要点:winutils.exe与hadoop.dll
- Python高级工具库Twisted最新版本发布
- STM32 Modbus嵌入式工业控制程序教程
- AKVIS Pastel V4.1.475.1742764bit中文版:照片转粉彩画神器
- 停车场管理系统C/C++源代码及可执行文件
- 轻松拖拽批量重命名照片的Python小工具
- 手机端HTML5弹出对话框实现教程
- A5M2 2.14.0数据库管理工具下载及使用说明
- JQ分页插件应用与代码演示资源包
- MetaTrader 5EA实现套利交易新策略
- 前端实现二维码识别与内容解析教程
- 深入解析自定义事件实例的应用与源码工具
- MFC对话框实现二进制与十六进制转换工具
- JS九宫格布局随机闪烁特效实现与应用
- a5m2_2.14.0_x86:全能数据库连接管理工具
- 图图名片设计软件v2.0beta版:傻瓜式设计与管理