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

【华为机试】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.kler.cn/a/16511.html

相关文章:

  • 第74期 | GPTSecurity周报
  • Camera Tuning中AE/AWB/AF基础知识介绍
  • LeetCode【0027】移除元素
  • 【go从零单排】Random Numbers、Number Parsing
  • [ComfyUI]Flux:繁荣生态魔盒已开启,6款LORA已来,更有MJ6写实动漫风景艺术迪士尼全套
  • 【大数据技术基础 | 实验十】Hive实验:部署Hive
  • 【Vue面试题】vue组件之间如何传值通信
  • pytest - Getting Start
  • 8个免费使用ChatGPT网站,部分可使用gpt4
  • 如何将 github pages 迁移到 vercel 上托管
  • C# ref和out用法和区别
  • 【MySQL入门指南】主键与唯一键的使用与区别
  • 华为OD机试 - 日志首次上报最多积分(Python)
  • CTF ASCII码 密码解密题 简单
  • 《*** 法治思想学习纲要》学习辅导
  • Windows环境安装Elasticsearch和Kibana
  • 模式识别是什么意思
  • 武忠祥老师每日一题||不定积分基础训练(五)
  • RabbitMQ 发布订阅模式,routing路由模式,topic模式
  • 2023-5-2面试题学习
  • 746. 使用最小花费爬楼梯
  • Cell:癌症研究的下一个问题是什么?
  • 大学生学java编程的就业前景怎么样?我来聊聊自己的见解
  • 通过Python的PIL库给图片添加文本水印
  • 【网络协议详解】——GNS3的使用(学习笔记)
  • 计算机网络笔记:TCP协议 和UDP协议(传输层)