当前位置: 首页 > news >正文

【华为机试】HJ1 字符串最后一个单词的长度

【华为机试】 HJ1 字符串最后一个单词的长度

描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
输入描述:
输入一行,代表要计算的字符串,非空,长度小于5000。

输出描述:
输出一个整数,表示输入字符串最后一个单词的长度。

示例1
输入:

hello nowcoder
输出:
8

说明:
最后一个单词为nowcoder,长度为8

实现前知识点了解

获取用户输入

  1. cin>>n或者cin>>str;
  2. getline(istream& is, string& str, char delim);//is通常为cin,delim为停止标记符,默认为/n
    通常这样使用getline(cin,str);
  3. cin.getline(string& str, char delim);
  4. .cin.get();//获取第一个字符,即使是回车也会捕捉;或者一个整数。。
  5. cin.get(char* ch,int lenght);
  6. cin.get(char* ch,int len);或cin.get(char* ch);
  7. scanf(“%d”,&n)
  8. gets(char* ch)
    获取用户不指定数量的输入
 while(cin>>n){}char ch= cin.get();while(ch != '\n'){ch = cin.get();}while(scanf("%d",%n)= EOF){}getline()gets()

思路

从后遍历整个字符串,从第一个非空格开始计算,遇到第一个空格时结束

#实现

#include <iostream>
using namespace std;//cin>>ch;
//cin.getline(str1,5000);
//getline(cin,str);int main() {string str1;getline(cin,str1);int last_word_lenght = 0;int str1_lenght = str1.size();for(int i = str1_lenght - 1;i >= 0;i--){if(str1[i] == ' ' && last_word_lenght == 0)continue;if(str1[i] == ' ')break;last_word_lenght += 1;}cout<<last_word_lenght;
}
http://www.lryc.cn/news/64177.html

相关文章:

  • Spring DI简介及依赖注入方式和依赖注入类型
  • ES6栈方法和队列方法
  • EventBus(事件总线)的使用和源码的简单解析
  • 《汇编语言》- 读书笔记 - 第2章-寄存器
  • English Learning - L3 综合练习 1 VOA-Color 2023.04.26 周三
  • 50道web前端工程师面试题及答案解析,你学会了吗
  • 【链表OJ题 1】反转链表
  • 【华为OD机试真题】计算网络信号 (javaC++python)100%通过率 超详细代码注释
  • Tomcat8和Tomcat9乱码问题
  • Lesson13 IP协议
  • 【每日一题Day192】LC1033移动石子直到连续 | 分类讨论 贪心
  • 2023年软件测试常见面试题100%问必背全套教程
  • TypeScript 基本概念
  • libfacedetection 人脸检测库 检测速度慢的问题
  • 项目骨架搭建
  • “火灾不分昼夜,安全在我心中”——五一前厂房消防检查纪实
  • UNIX环境高级编程——进程关系
  • C# ref和out用法和区别
  • 信息复制的革命:印刷术【提高信噪比】
  • 【MySQL】事务
  • 学习HCIP的day.03
  • Maven项目的配置
  • Spring Boot使用(基础)
  • 6WINDGate-overview
  • Java8新特性-流式操作
  • Nautilus Chain Layer 3 圆桌会议圆满举办,超4.8K用户观看
  • 本地elasticsearch中文分词器 ik分词器安装及使用
  • Java 中的异常处理机制是什么?如何使用它来处理程序中的异常?(七)
  • 基于UDQ的并网单相逆变器控制【同步参考系下单相并网全桥正弦PWM逆变器闭环控制】(Simulink)
  • JAVA开发——常用的注解