字符串逆序(C语言版 函数,递归方法)

简介: 字符串逆序(C语言版 函数,递归方法)
🌹作者:云小逸
📝个人主页: 云小逸的主页
📝码云: 云小逸 (YunXiaoYi003) - Gitee.com
🤟motto:要敢于一个人默默的面对自己, ==强大自己才是核心==。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在!学会自己和解,与过去和解,努力爱自己。==希望春天来之前,我们一起面朝大海,春暖花开!==🤟
👏专栏:C语言初阶👏

@TOC


前言

——————————————————————————————
首先先写上几句话:献给坚持创作的我和点开这篇文章希望进步的你

1、人初做事,如鸡伏卵,不舍而生气渐充。如燕营巢,不息而结构渐牢。如滋培之木,不见其长,有时而大。如有本之泉,不舍昼夜,盈科而后进,放乎四海。——曾国藩这是我最喜欢的一句名言,每次读,都会让浮躁的心更静一些,更稳一些。「不见其长,有时而大」八个字尤为值得琢磨。
2、先干起来,逢山开路,遇水搭桥,有什么问题解决什么问题。坐在那里幻想找到一个神奇的、一劳永逸的解决方案是毫无意义的,干起来,面对问题,解决问题,是我能够想到的最快的进步途径。

题目要求:

将参数字符串中的字符==反向排列==,不是==逆序打印==

解法1(无函数,非递归)

代码:

#include<stdio.h>
#include<string.h>
int main(void)
{
    char arr[] = "abcdef";//a,b,c,d,e,f,\0共六个字符

    int left = 0;
    int right = strlen(arr) - 1;//strlen是遇到\0就停止,不包含\0
    while (left < right)
    {
        char temp = arr[left];
        arr[left] = arr[right];
        arr[right] = temp;
        left++;
        right--;
    }

    printf("%s\n", arr);
    return 0;
}

结果:

在这里插入图片描述

解法二(函数,非递归)

代码:

结果:

在这里插入图片描述

解法三(函数,递归)

代码:

#include<stdio.h>
#include<string.h>
void resverse(char* str)
{
    char temp = *str;//1
    int len =strlen(str);
    *str = *(str + len - 1);//2
    *(str + len - 1) = '\0';//3
    if (strlen(str + 1) >= 2)
    {
        resverse(str + 1);//4
    }
    *(str + len - 1) = temp;

}

int main(void)
{
    char arr[] = "abcdef";//a,b,c,d,e,f,\0共六个字符
    resverse(arr);
    printf("%s\n", arr);
    return 0;
}

结果:

在这里插入图片描述

最后

十分感谢你可以耐着性子把它读完和我可以坚持写到这里,送几句话,对你,也对我:

1.做==更好的自己==,而不是完美的别人。
2.谁都愿意做自己喜欢的事情,可是,做你该做的事情,才叫成长。
3.活成一个真正有形的人,而不是—摊肉、一团混乱不堪的情绪。
4.放弃很容易,但坚持—定很酷。
5.知识不是力量,知识用起来才是力量。
6.人生只有两个选择,要么忙着死,要么忙着活! ==熬得住就出众,熬不住就出局==,你的野心很大,所以没资格停下。
7.白天归顺生活,夜晚忠于自己

最后如果觉得我写的还不错,请不要忘记==点赞==✌,==收藏==✌,加==关注==✌哦(。・ω・。)

愿我们一起加油,奔向更美好的未来,愿我们从懵懵懂懂的一枚==菜鸟==逐渐成为==大佬==。加油,为自己点赞!

目录
相关文章
|
16小时前
|
C语言
C语言prinf函数
C语言prinf函数
10 4
|
1天前
|
C语言
【海贼王编程冒险 - C语言海上篇】库函数怎样模拟实现?
【海贼王编程冒险 - C语言海上篇】库函数怎样模拟实现?
5 1
|
1天前
|
C语言
【C语言基础篇】字符串处理函数(四)strcmp的介绍及模拟实现
【C语言基础篇】字符串处理函数(四)strcmp的介绍及模拟实现
|
1天前
|
存储 C语言
【C语言基础篇】字符串处理函数(三)strcat的介绍及模拟实现
【C语言基础篇】字符串处理函数(三)strcat的介绍及模拟实现
|
1天前
|
C语言
【C语言基础篇】字符串处理函数(二)strcpy的介绍及模拟实现
【C语言基础篇】字符串处理函数(二)strcpy的介绍及模拟实现
|
1天前
|
C语言
【C语言基础篇】字符串处理函数(一)strlen的介绍及模拟实现
【C语言基础篇】字符串处理函数(一)strlen的介绍及模拟实现
|
1天前
|
存储 缓存 移动开发
【C语言基础篇】scanf()函数详解
【C语言基础篇】scanf()函数详解
|
2天前
|
存储 C语言
C语言的函数返回值和指针
C|函数返回值(区分各类值)和指针(区分各类存储空间)的细节
|
28天前
|
存储 C语言
C语言中向函数传递值和从函数返回值的技术解析
C语言中向函数传递值和从函数返回值的技术解析
26 0
|
1月前
|
存储 C语言
C语言函数的返回值
C语言函数的返回值
15 0