题解 | #单词倒排#

单词倒排

https://www.nowcoder.com/practice/81544a4989df4109b33c2d65037c5836

#include <ctype.h>
#include <stdio.h>
#include <string.h>

// 1. 得到整行字符串
// 2. 处理字符串
//     2.1 逆序遍历字符串,将非字母的字符都设为空字符
//     2.2 每在字符串中找到一个单词就输出

int main() {
    
    char line[10010] = {0};
    gets(line);

    int len = strlen(line) - 1;
    while(len >= 0)
    {
        if( ! isalpha(line[len]))
        {
            line[len] = '\0';
            //非字母,检查它后一个是不是字母,若是字母,则它是一个单词的首字母
            if(isalpha(line[len+1]))
            {
                printf("%s ", &line[len+1]);
            }
        }
        len --;
    }

    //处理首字符
    if(isalpha(line[0]))
    {
        printf("%s", line);
    }

    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-01 10:56
点赞 评论 收藏
分享
06-08 22:25
门头沟学院 Java
从零开始的转码生活:这hr不会打开手机不分青红皂白给所有人群发这句话,过一会再给所有人再发一遍,这肯定会有重复的,不管,再过一会再发一遍
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-04 14:23
steelhead:你回的有问题,让人感觉你就是来学习的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务