当前位置:网站首页>【函数与递归】7.19
【函数与递归】7.19
2022-08-03 05:11:00 【tt142】
从今天开始就以所学内容进行命名,再也不担心记不住数字哈哈
今天还是学了一些函数的内容,很少一点的收尾,主要接触到一种新的语句,递归
初识还是很有难度的对我来说,一点都不简单,学了五个小时也算是才刚刚入门
现在的知识真的是连C语言的门槛都还没看见。。
#include<stdio.h>
//史上最简单的递归
int main()
{
printf("hehe");
main()
return 0;
} //可能存在stack overflow的问题
//接受一个无符号整型,并且按顺序打印,例如1234->1 2 3 4
void print(int x)
{
if(x>9)
print(x/10);
printf("%d ",x%10);
}
int main()
{
unsigned int a =0;
scanf("%d",&a);
print(a);
return 0;
}
//编写函数,不允许创建临时变量,求字符串长度
int my_strlen(char* x)
{
if(*x != '\0')
return 1+my_strlen(x+1);
else
return 0;
}
int main()
{
char arr[]="dada";
int ret=my_strlen(arr);
printf("%d",ret);
return 0;
}
//描述第n个斐波那锲数:
/首先用递归的方法写,并且表明循环工作量
int count;
int Fib(int x)
{
if(x == 2)
count++;
if(x>2)
return Fib(x-2)*Fib(x-1);
else
return 1;
}
int main()
{
int n=0;
scanf("%d",&n);
int ret= Fib(n);
printf("%d",ret);
printf("%d",count);
return 0;
}
//发现效率低下,改成函数方式
int count;
int Fib(int x)
{
int a, b=0;
int c=1;
for(a=1,b=1,c=1;x>2;count++,x--)
{
c=a + b ;
a=b;
b=c;
}
return c;
}
int main()
{
int n =0;
scanf("%d",&n);
int ret =Fib(n);
printf("ret=%d\n",ret);
printf("count=%d",count);
return 0;
}
//求n阶乘
int Fac(int x)
{
if(x>1)
return x*Fac(x-1);
else
return 1;
}
int main()
{
int n=0;
scanf("%d",&n);
int ret = Fac(n);
printf("%d",ret);
return 0;
}
边栏推荐
猜你喜欢
PotPlayer实现上班摸鱼电视自由
idea uses @Autowired annotation to explain the reasons and solutions
传说中可“免费白拿”的无线路由器 - 斐讯 K2 最简单刷 breed 与第三方固件教程
IO process thread -> thread -> day5
Tag stack - stack monotonically preparatory knowledge - lt. 739. The daily temperature
VSO Downloader Ultimate 5.0.1.45 中文多语免费版 在线视频下载工具
shell script loop statement
typescript42-readonly修饰符
安装IIS服务(Internet信息服务(Internet Information Services,简写IIS,互联网信息服务)
Js学习笔记(四)
随机推荐
IO process thread -> thread -> day5
idea uses @Autowired annotation to explain the reasons and solutions
Benchmark 第一篇 了解Benchmark
详解Nurbs曲线
Pr第四次培训笔记
[Harmony OS] [ArkUI] ets development graphics and animation drawing
Js学习笔记(四)
-飞机大战-
web安全-SSTI模板注入漏洞
vim命令
求因子数量
Common lipophilic cell membrane dyes DiO, Dil, DiR, Did spectrograms and experimental procedures
D-PHY
ss-3.工程重构
【Harmony OS】【ARK UI】ets use startAbility or startAbilityForResult to invoke Ability
OptionError: ‘Pattern matched multiple keys‘
1054 求平均值 (20 分)
Junit
高效率科研神器——小软件、大能量
Lambda表达式案例