题解 | #句子逆序#

句子逆序

http://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3

/C语言解法/
char* reverse_words(char* str, char* prt_str)
{
int i, len, cnt = 0;
char temp;
char* head = str;
char* dst = prt_str;
char* end = str + strlen(str) - 1;
len = strlen(str);
//printf("stri:%s, len:%d\n", str, len);
while (end >= head)
{
if(' ' == *end)
{
memcpy(dst, end + 1, cnt);
dst[cnt] = ' ';
//printf("cnt:%d,%s,%s\n", cnt, dst, prt_str);
dst += (cnt + 1);
cnt = 0;
}
else if( end == head)
{
cnt++;
memcpy(dst, head, cnt);
//printf("head, cnt:%d,%s,%s\n", cnt, dst, prt_str);
}
else
{
cnt++;
}
end--;
}
return prt_str;
}

全部评论

相关推荐

qz鹿:*** 祝他毕业就失业
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-26 16:06
已编辑
快手电商 后端 23k-35k
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务