【题目】Length of Last World
Given a string s consists of upper/lower-case alphabets and empty space characters ’ ‘, return the length of last word in the string.If the last word does not exist, return 0.
Note: A word is defined as a character sequence consists of non-space characters only.
For example,
Given s = “Hello World”,
return 5.
【具体代码如下】
int lengthOfLastWord(char* s)
{
int i=0;
int count=0;
while(s[i]!='\0')
{
while((s[i]!=' ')&&(s[i]!='\0'))
{
count++;
i++;
}
while((s[i]==' ')&&(s[i]!='\0'))
{
i++;
}
if(s[i]=='\0')return count;
else count=0;
}
return count;
}
【自我总结】
这道题用时虽然不多,但是所犯的错误很多,改了好些次才改好。AC。、
第一,要明确题目的意思,”hello world ”,world后面有空格,但是最后一个单词仍然是world,应该返回5。要明确题目要求。
第二,变量i作为大while循环条件判断的数组下标,该while函数体内,i的值在改变,因此,内层while循环一定要注意,一定要加上再次对s[i]!=’\0’的判断。