题解 | #单词倒排#

单词倒排

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

#include <stdio.h>

#include<string.h>

int main()

{

char str[10001];

gets(str);

int end = strlen(str) - 1;

int bigen = end;

//把所有不是字符的转换为空格

for (int j = 0;j < end;j++)

{

if (str[j] >= 'a' && str[j] <= 'z' || str[j] >= 'A' && str[j] <= 'Z')

{

}

else

{

str[j] = ' ';

}

}

//开始遍历打印

for (int i = bigen;i >= 0;i--)//i=/0下一个位置 开始进行遍历寻找

{

if (str[i] == ' ') //当str【i】 == 空格时 开始打印

{

for (int j = i + 1;j <= end;j++) //从空格打印到end 结尾

{

printf("%c", str[j]);

}

printf(" "); //打印完毕后 打印空格

end = i - 1; //更改 末尾位置

}

if (i == 0) //最后一个单词 从头开始往后寻找空格打印

{

int z = 0;

while (end >= 0)

{

printf("%c", str[z]);

z++;

end--;

}

}

}

return 0;

}

全部评论

相关推荐

点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务