鱼C论坛

 找回密码
 立即注册
查看: 1752|回复: 2

[技术交流] 字符串翻转

[复制链接]
发表于 2018-5-22 01:00:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Mr.HO 于 2018-5-22 20:05 编辑

字符串翻转.png


#define _CRT_SECURE_NO_WARINGS
#include <stdio.h>
#include<stdlib.h>
#include<string.h>

void main()

{
        char strings[]={"abcdefg"};
        char *p1=strings;
        char *p2;
        char ch;
        printf("原始字符串    %s  \n",strings);
        p2=p1+strlen(strings)-1;
        while(p1<p2)
        {
                ch=*p1;
                *p1=*p2;
                *p2=ch;

                p1++;
                p2--;
        }
        printf("翻转字符串    %s  \n",strings);


system("pause");
return;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-5-22 20:06:05 | 显示全部楼层
补充一个递归算法
#define _CRT_SECURE_NO_WARINGS
#include <stdio.h>
#include<stdlib.h>
#include<string.h>

void Recursion(char *p,char *outbuf)
{
        if (NULL==p)
        {
                return ;
        }
        if (*p=='\0')
        {
                return ;
        }
        Recursion(p+1,outbuf);
        strncat(outbuf,p,1);
        return ;
}
void main()

{
        char o[]="0123456789";
        char outbuf[100]={0};
        Recursion(o,outbuf);
        printf("%s",outbuf);


system("pause");
return;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-22 20:55:12 | 显示全部楼层
#define _CRT_SECURE_NO_WARINGS
#include <stdio.h>
#include<stdlib.h>
#include<string.h>

int trimSpace(char *inbuf,char *outbuf)
{
        char *p=inbuf;
        char *w=outbuf;
        if(NULL==inbuf || NULL==outbuf)
        {
                printf("the function trimSpace() is ERROR!\n");
                return -1;
        }
        while(*p!='\0')
        {
                if (!isspace(*p))
                {
                        *w=*p;
                        w++;
                }
                p++;
        }
        *w='\0';
        return 0;


}




void main()

{
        char a[100]="            ho    janan           ";
        char outbuf[100]={0};
        trimSpace(a,outbuf);
        printf("复制的数据 %s\n",outbuf);



system("pause");
return;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-27 03:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表