目录
第壹题 :字符串逆序(递归实现)
第贰题 :计算一个数的每位之和(递归实现)
第叁题 :递归实现n的k次方
本文的Gitee地址:CSDN_C游记_玄澈: 《C游记》博客文章源代码
第壹题 :字符串逆序(递归实现)
方法一,非递归实现
main主体部分
- 数组名是首元素的地址
- 首元素是char类型,对应的传参元素过去就是 char* 类型
采用两个指针不断移动,然后交换两个位置的元素来实现逆序
方法贰,递归实现
大致思路
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; }
第贰题 :计算一个数的每位之和(递归实现)
int DigiSum(unsigned int n) { if (n > 9) { return DigiSum(n / 10) + n % 10; } else { return n; } }
第叁题 :递归实现n的k次方