• 递归系列2(字符串翻转,12345翻转)


    编写一个函数reverse_string(char * string)(递归实现)
    实现:将參数字符串中的字符反向排列。

    要求:不能使用C函数库中的字符串操作函数。

    <span style="font-size:24px;">#include<stdio.h>
    void reverse_string(char * string)
    {
        if(*string != '')
        {
            reverse_string(string+1);
            printf("%c",*string);
        }
        else
            return;
    }
    int main()
    {
        char *p = "abcdef";
        reverse_string(p);
        printf("
    ");
        return 0;
    }

    把12345翻转成54321

    #include<stdio.h>
    void print(int n)
    {
        if(n != 0)
        {
            printf("%d",n%10);
            print(n/10);
        }
    }
    int main()
    {
        int a = 12345;
        print(a);
        printf("
    ");
        return 0;
    }

    还有一种翻转

    abcd 翻转成 dcba

    #include<stdio.h>
    void reverse_string(char * str)
    {
    	int n = 0;
    	char *p = str;
    	char tmp;
    	while(*p++ != '')
    	{
            n++;
    	}
    	if(n > 1)
    	{
            tmp=str[0];
            str[0] = str[n-1];
            str[n-1]='';
            reverse_string(str+1);
            str[n-1] = tmp;
    	}
    }
    int main()
    {
    	char string[]="abcd";
    	reverse_string(string);
    	printf("%s
    ",string);
        return 0;
    }



  • 相关阅读:
    C#泛型
    C#接口
    C#委托和事件
    Unity Ray 射线
    C#学习基础
    Graph | Eulerian path
    Careercup | Chapter 8
    Leetcode | Pow(x, n)
    Leetcode | Gray code
    分布式缓存
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/6913517.html
Copyright © 2020-2023  润新知