编程简单问题

来源:百度知道 编辑:UC知道 时间:2024/07/04 11:48:16
原题是:编制函数void Reverse(char ch[]),用于完成字符串的反转。

void Reverse(char ch[])
{
int i;
char temp;
for(i=strlen(ch)-1;i>=strlen(ch)/2;i--)
{
temp=ch[i];
ch[i]=ch[strlen(ch)-i-1];
ch[strlen(ch)-i-1]=temp;
}
}

void Reverse(char ch[])
{
int i,n=0;
char c;
while(ch[n]!='\0')
++n;
for(i=0; i<n/2; ++i)
{
c = ch[i];
ch[i] = ch[n-1-i];
ch[n-1-i] = c;
}
}

void Reverse(char ch[])
{
int i,len=0;
char c;
while(ch[++len]);

for (i = 0,len--; i<=len-i; i++) {
c=ch[i];
ch[i]=ch[len-i];
ch[len-i]=c;
}
}

void Reverse(char ch[])
{ int n=0,flag=strlen(ch);
char *p1=ch,t,*p2=ch+flag-1;

for(;n<=flag/2;n++)
{ t=*(p1+n);
*(p1+n)=*(p2-n);
*(p2-n)=t;
}
cout<<ch<<endl;
}