所有的循环都可以写成递归,但递归不一定能写成循环
# include <stdio.h>//引用函数库
//递归实现累加
int add_r(int num){
if (num == 0){
return 0;
}
else{
return add_r(num-1) + num;
}
}
//循环实现累加
int add_l(int num){
int n1 = 0;
int n2;
for (int i = 0; i < num; i++){
n2 = n1+i+1;
n1 = n2;
}
return n2;
}
int main(){
printf("%d", add_r(15));
printf("%d", add_l(15));
}
最内层的函数最后调用,最先执行,最先调用的函数,要等后一个调用的函数执行完才能执行
今天的文章C语言 函数递归分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/30155.html