字符串倒序

字符串倒序

#include <stdio.h>
#include <string.h>
#include <stack>
char *Strrev(char *s)
{
 char ch;
 char *p = s;
 char *q = s + strlen(s) - 1;
 while (p != q)
 {
  ch = *p;
  *p++ = *q;
  *q-- = ch;
 }
 return s;
}
char *Strrev_Recursion(char *s, char *p)
{
 if (s != p)
 {
  char ch = *s; *s = *p; *p = ch;
  Strrev_Recursion(++s, --p);
 }
 return --s;
}
char *_Strev(char *s)
{
 return Strrev_Recursion(s, s + strlen(s) - 1);
}

char *Strrev_WithoutRecursion(char *s)
{
 using std::stack;
 stack<char> aStack;
 char *p = s;
 while (*p != '/0')
  aStack.push(*p++);
 p = s;
 while (!aStack.empty())
 {
  *p++ = aStack.top();
  aStack.pop();
 }
 
 return s;
}
void main()
{
 char s[50] = "I am a student.";
 printf("%s/n", Strrev(s));
 
 printf("%s/n", _Strev(s));
 printf("%s/n", Strrev_WithoutRecursion(s));

字符串倒序

文章链接: https://www.mfisp.com/15124.html

文章标题:字符串倒序

文章版权:梦飞科技所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
建站教程投稿分享

在CentOS7 mini版中如何设置防火墙及时间等

2022-12-29 23:57:35

建站教程投稿分享

递归遍历文件

2022-12-30 0:02:16

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
客户经理
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索

梦飞科技 - 最新云主机促销服务器租用优惠