思路:字符串反转遍历,从最后开始计数,检测到空格结束
#include <stdio.h>
#include <string.h>
int main() {
char str[5000];
char c = '\n';
int n = 0;
while (scanf("%c", &c)) {
if(c == '\n'){
break;
}
str[n++] = c;
}
int last_word_len = 0;
int word_len = strlen(str);
for (int i = word_len - 1; i >= 0; i--){
if(str[i] != ' '){
last_word_len ++;
}
else {
break;
}
}
# 有些编译器会把结束符 \n 算一个,所以要减去
# printf("%d", last_word_len-1);
printf("%d", last_word_len);
return 0;
}