●翻转一个字符串
先将整个字符串逆序,后再将其中的每一个字符串逆序,可实现对一个字符串的翻转
void reserve(char *start,char *end)//字符串逆序
{
while(start<end)
{
char temp=*start;
*start=*end;
*end=temp;
start++;
end--;
}
}
int main()
{
char input[100];
gets(input);
char *p1=input;
char *p=input;
整体逆序后,部分逆序
reserve(input,input+strlen(input)-1);(整体逆序)
//通过指针指向字符串的首尾地址
while(*p!='\0')
{
while(*p!='\0'&&*p!=' ')
{
p++;
}
reserve(p1,p-1);(部分逆序)
//p1,p-1 分别指向字符串的首尾地址
if(*p!='\0')
{
p++; //指向下一个字符串的首地址
p1=p;
}
}
puts(input);
return 0;
}
i love you-----you love i flip a string like this
Guess you like
Origin blog.csdn.net/cfk17829572643/article/details/109689945
Recommended
Ranking