代码拉取完成,页面将自动刷新
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;
int Fib(int n)//非递归实现斐波那契
{
if (n == 1 || n == 2)
return 1;
long long int Fib1 = 1;
long long int Fib2 = 1;
long long int Fibn = 0;
for (int i = 2; i < n; i++)
{
Fibn = Fib1 + Fib2;
Fib1 = Fib2;
Fib2 = Fibn;
}
return Fibn;
}
void print(int n)//递归打印一个整数的每一位
{
if (n > 9)
{
print(n / 10);
}
printf("%d ", n % 10);
}
int Fac(int n)//递归求n的阶乘
{
if (n <= 1)
return 1;
else
return n * Fac(n - 1);
}
int my_strlen(char* p)//非递归模拟strlen
{
int count = 0;
while (*p != '\0')
{
count++;
p++;
}
return count;
}
int my_strlen(char* p)//递归实现strlen
{
if (*p == '\0')
{
return 0;
}
else
return 1 + my_strlen(p + 1);
}
void reverse_string(char* string)//递归模拟实现reverse
{
char* l = string;
char* r = string + strlen(string) - 1;
while (l < r)
{
char tmp = *l;
*l = *r;
*r = tmp;
l++;
r--;
}
}
int DigitSum(int n)//计算一个数的每位之和(递归实现)
{
if (n > 9)
return DigitSum(n / 10) + n % 10;
else
return n;
}
int Pow(int n, int k)//递归实现n的k次方
{
if (k == 0)
return 1;
else
return n * Pow(n, k - 1);
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。