例如将语句“change is importance”进行反转,反转后的语句“importance is change“
用C语言代码编写:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void change(char* st)
{
if(NULL==st)
{
return;
}
char*pst=st;
char*p=st;
char*start=NULL;
char*end=NULL;
char n;
//将每一个先进行反转得到:egnahc si ecnatropmi
while(*pst++!='\0')
{
start=st;
end=pst-1;
while(start<end)
{
n=*start;
*start=*end;
*end=n;
start++,end--;
}
start=end=p+1;
}
//再将egnahc si ecnatropmi反转得到importance is change
start=st;
end=p-2;
while(start<end)
{
n=*start;
*start=*end;
*end=n;
start++;
end--;
}
}
int main()
{
char st[]= "change is importance";
change(st);
printf("%s\n", st);
system("pause");
return 0;
}
//得到是:ecnatropmi si egnahc
void change1(char* st)
{
if(NULL==st)
{
return;
}
char*start=NULL;
char*end=NULL;
char n;
int len=strlen(st)-1;
start=st;
end+=len;
while(start<end)
{
n=*start;
*start=*end;
*end=n;
start++;
end--;
}
}