源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

使用C语言递归与非递归实现字符串反转函数char *reverse(char *str)的方法

  • 时间:2022-01-12 14:51 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:使用C语言递归与非递归实现字符串反转函数char *reverse(char *str)的方法
代码如下所示:
[u]复制代码[/u] 代码如下:
[b]// 递归实现字符串反转   [/b]char *reverse(char *str)   {    if( !str )    {     return NULL;  }       int len = strlen(str);       if( len > 1 )       {           char ctemp =str[0];           str[0] = str[len-1];              str[len-1] = '/0';// 最后一个字符在下次递归时不再处理           reverse(str+1); // 递归调用           str[len-1] = ctemp;       }       return str;   } [b]// 非递归实现字符串反转 [/b]char *reverse(char *str)   {    if( !str )    {     return NULL;  }       int len = strlen(str);       char temp;       for( int i = 0; i < len / 2; i++ )       {           // 交换前后两个相应位置的字符           temp = *(str + i);           *(str + i) = *(str + len - 1 - i);           *(str + len - 1 - i) = temp;       }       return str;   } int _tmain(int argc, _TCHAR* argv[]) {  char src[] = {"abcdef"};  char *pdest = reverse(src);  getchar();  return 0; }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部