she is a girl 倒置

//面试碰到的一道题,"she is a girl"字符串倒置成"girl a is she",给我一张纸就让我写程序,然后就成功的被pass掉了。程序真的不是在纸上写出来的。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
	char str[] = "she is a girl";
	char *tmp = (char*)malloc(strlen(str) + 1);
	memset(tmp,strlen(str)+1);
	int count = 0;
	char * p = str;
	while(strsep(&p," "))
		count++;

	while(count--){
		p = str;
		for(int i = 0;i<count;i++)
		    p+=(strlen(p)+1);

		if(count == 0)
		    strcat(tmp,p);
		else
		    strcat(strcat(tmp,p)," ");
	}
	puts(tmp);//"girl a is she"
	free(tmp);
	return 0;
}

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...