C语言
主页 > 软件编程 > C语言 >

C语言修炼之路函数篇真题训练(下)

2022-03-03 | 秩名 | 点击:

本文的Gitee地址:文章源代码 https://gitee.com/xuan--che/csdn--c-travel-notes-xuanche

第壹题 :字符串逆序(递归实现)

方法一,非递归实现

main主体部分

采用两个指针不断移动,然后交换两个位置的元素来实现逆序

方法贰,递归实现

大致思路

代码实现 (推荐自己手动模拟一下)

1

2

3

4

5

6

7

8

9

10

11

void reverse_string(char* str)

{

    int len = strlen(str);

    char tmp = str[0];

    str[0] = str[len - 1];

    str[len - 1] = '\0';

  

    if(strlen(str + 1) >= 2)  reverse_string(str + 1);

  

    str[len - 1] = tmp;

}

第贰题 :计算一个数的每位之和(递归实现)

1

2

3

4

5

6

7

8

9

10

11

int DigiSum(unsigned int n)

{

    if (n > 9)

    {

        return DigiSum(n / 10) + n % 10;

    }

    else

    {

        return n;

    }

}

第叁题 :递归实现n的k次方

原文链接:https://blog.csdn.net/forever_bryant/article/details/122695022
相关文章
最新更新