华为训练题目:初级——字符串最后一个单词的长度

初级

字符串最后一个单词的长度

描述
计算字符串最后一个单词的长度,单词以空格隔开。

知识点 字符串,循环
运行时间限制 0M
内存限制 0
输入
一行字符串,长度小于128。

输出
整数N,最后一个单词的长度。

样例输入 hello world
样例输出 5

思路:这道题字符串可能中间有空格,可能后面最后有空格。

先将下标从后往前指到最后一个不是空字符的方,再开始计数

 1 #include<iostream>
 2 #include<string>
 3 using namespace std;
 4
 5 int main()
 6 {
 7     string str;
 8     getline(cin,str);
 9     int len=str.size();
10     int re=0;
11     int i=len-1;
12     while(1)
13     {
14         if(str[i]!=‘ ‘)
15             break;
16         else
17             i--;
18     }
19     for(int j=i;j>=0;j--)
20     {
21         if(str[j]!=‘ ‘)
22             re++;
23         else
24             break;
25     }
26     cout<<re<<endl;
27     system("pause");
28 }
时间: 2024-10-13 06:45:00

华为训练题目:初级——字符串最后一个单词的长度的相关文章

字符串最后一个单词的长度(华为在线训练)

描述 计算字符串最后一个单词的长度,单词以空格隔开. 知识点 字符串,循环 运行时间限制 0M 内存限制 0 输入 一行字符串,长度小于128. 输出 整数N,最后一个单词的长度. 样例输入 hello world 样例输出 5 #include <stdio.h> #include <string.h> #include LEN 1024 int main(void) { int len, i, j; char str[LEN]; gets(str); len = strlen(

华为OJ初级(一)——字符串最后一个单词的长度

/** * 功能:计算字符串最后一个单词的长度,单词以空格隔开. * 输入: 一行字符串,长度小于128. * 输出: 整数N,最后一个单词的长度. * 样例输入: hello world * 样例输出: 5 * */ 两种方法: 方法一: public int getFinalWordLen(){ String[] words= new String[128]; int len=0; int num=0; Scanner sc= new Scanner(System. in); words=s

华为OJ:2290 字符串最后一个单词的长度

用JAVA就很简单,只要用spilt函数,再输出最后一个字符串. 题意是要求你先自己写分隔好字符串这样子.有个比较坑的地方就是测试用例应该有个全为空的,要注意. import java.util.Scanner; public class Main { public static void main(String args[]){ Scanner input=new Scanner(System.in); String s=input.nextLine(); String ss[]=s.spli

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

题目描述计算字符串最后一个单词的长度,单词以空格隔开.输入描述:一行字符串,非空,长度小于5000.输出描述:整数N,最后一个单词的长度. 解法(C语言版): #include<stdio.h> #include<string.h> int main() { char str[5000]; int i, n, len; gets(str); len = strlen(str); n = 0; if(len != 0) for(i = len-1; (str[i] != ' ') &

[华为]字符串最后一个单词的长度

计算字符串最后一个单词的长度,单词以空格隔开. 输入描述:一行字符串,非空,长度小于5000. 输出描述:整数N,最后一个单词的长度. 输入例子:hello world 输出例子:5 1 #include<iostream> 2 #include<string> 3 #include<vector>  4 5 using namespace std;  6 7 int main() 8 {     9 string input;     10 vector<str

字符串最后一个单词的长度

题目描述 计算字符串最后一个单词的长度,单词以空格隔开. 输入描述 一行字符串 输出描述 整数N,最后一个单词的长度. 输入例子 hello world 输出例子 5 方法1 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while(in.hasNextLine()) { String str =

[华为OJ--C++]001-字符串最后一个单词的长度

题目描述:计算字符串最后一个单词的长度,单词以空格隔开. 输入描述:一行字符串 输出描述:整数N,最后一个单词的长度. 输入例子:hello world 输出例子:5 算法实现: #include<iostream> #include<string> using namespace std; int main() { string str; getline(cin,str); int count=0; for(int i=str.length()-1;i>=0;i--) {

[编程题]字符串最后一个单词的长度

计算字符串最后一个单词的长度,单词以空格隔开. 输入描述: 一行字符串,非空,长度小于5000. 输出描述: 整数N,最后一个单词的长度. 输入例子: hello world 输出例子: 5 #include<stdio.h> #include<string.h> int main(){ char str[5000]; int k,i; scanf("%[^\n]",str); for(i=strlen(str)-1;i>0 ;i--){ if(str[i

01_字符串最后一个单词的长度

题目描述 计算字符串最后一个单词的长度,单词以空格隔开. 输入描述: 一行字符串,非空,长度小于5000 输出描述: 整数N,最后一个单词的长度. # str1的数据类型是字符串 str1 = input().split()[-1] l = len(str) print(l)   原文地址:https://www.cnblogs.com/summer1019/p/10568064.html