华为机试1-字符串最后一个单词的长度
2021/9/10 23:07:54
本文主要是介绍华为机试1-字符串最后一个单词的长度,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。输入描述: 输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述: 输出一个整数,表示输入字符串最后一个单词的长度。
示例
输入: hello nowcoder
输出: 8
说明: 最后一个单词为nowcoder,长度为8
Solution
version1 char数组
#include<iostream> using namespace std; int main(){ char a[5000] = {0}; //带空格的字符串输入需要cin.get cin.get(a,5000); //查看是否为单单词,是,则输出 int i = 0,count = 0; while(a[i]!=' '&&a[i]!='\0'){ i++; } if(a[i]==' '){ i=0; //计算字符串长度 while(a[i]!='\0'){ i++; } //从终止符开始,数到空格就是最后一个单词的长度 while(a[i]!=' '){ i--; count++; } cout<<count-1; } else{ cout<<i; } return 0; }
version2 使用string
#include<iostream> #include<string> using namespace std; int main(){ string str; getline(cin,str); int count=0; int len=str.length(); for(int i=(len-1);i>=0;i--){ if(str[i]!=' '){ count++; } else{ break; } } cout<<count<<endl; return 0; }
version3 钻输入的漏洞
#include<bits/stdc++.h> using namespace std; int main() { string s; while(cin >> s); cout << s.size(); return 0; }
Tips:输入带空格的字符串需用 cin.get(char*,num) 或 getline(cin,str) 。
这篇关于华为机试1-字符串最后一个单词的长度的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-06小米11i印度快充版ROM合集:极致体验,超越期待
- 2024-10-06【ROM下载】小米11i 5G 印度版系统, 疾速跃迁,定义新速度
- 2024-10-06【ROM下载】小米 11 青春活力版,青春无极限,活力全开
- 2024-10-05小米13T Pro系统合集:性能与摄影的极致融合,值得你升级的系统ROM
- 2024-10-01基于Python+Vue开发的医院门诊预约挂号系统
- 2024-10-01基于Python+Vue开发的旅游景区管理系统
- 2024-10-01RestfulAPI入门指南:打造简单易懂的API接口
- 2024-10-01初学者指南:了解和使用Server Action
- 2024-10-01Server Component入门指南:搭建与配置详解
- 2024-10-01React 中使用 useRequest 实现数据请求