用vc编写一个递归函数,将一个字符串按其逆序输出。

来源:百度知道 编辑:UC知道 时间:2024/06/04 01:59:44

#include"stdio.h"
#include "string.h"

void Rever(char* szStr,int iIndex)
{
if(iIndex >= 0 )
putchar(szStr[iIndex]);

iIndex-- ;
if(iIndex >= 0 )
Rever(szStr,iIndex);

}
void main()
{
char szStr[100];
gets(szStr);
Rever(szStr,strlen(szStr)-1);
}

如果只需要让倒置输出而已的话,楼上的就可以了,但是如果你要把一个字符串在内存中反序的话(输出当然也就倒置了),就要用下面的递归了,稍微复杂一点,不过看了会有帮助的。copy下来运行一下。
#include<iostream>
using namespace std;
void change(char *test);
char *p=NULL;
void main()
{
char test[]="I love you,do you know ?";

p=test;
cout<<p<<endl;
change(test);
cout<<"*** result is: "<<p<<endl;
}
void change(char *test)
{
int len=strlen(test);
if(len==1)
return;
change(test+1);
char temp=*test;
char *ptemp=test;
int ic