问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言的函数嵌套调用与函数递归调用有啥区别?111

发布网友 发布时间:2023-10-11 10:53

我来回答

5个回答

热心网友 时间:2024-10-16 21:37

需要明白的是

函数嵌套是语言特性,递归调用是逻辑思想。

函数嵌套允许在一个函数中调用另外一个函数,比如有三个函数

funca()
{
funcb();
}

funcb()
{
funcc();
}

funcc()
{
cout << "Hello" <<endl;
}

这个就叫做嵌套调用,它是一个语言提供的程序设计的方法,也就是语言的特性。

而递归是一种解决方案,一种思想,将一个大工作分为逐渐减小的小工作,比如说一个和尚要搬50块石头,他想,只要先搬走49块,那剩下的一块就能搬完了,然后考虑那49块,只要先搬走48块,那剩下的一块就能搬完了……,递归是一种思想,只不过在程序中,就是依靠函数嵌套这个特性来实现了。

递归最明显的特点就是,自己调用自己(不就嵌套调用了嘛)。
funca()
{
if(statement1)
funca();
else
exit(0);
}

概括说,函数嵌套就是函数调用函数,是普遍的,递归就是函数调用自身,使函数嵌套的一个特例。

我说的不知道明不明白,有点乱……

热心网友 时间:2024-10-16 21:37

函数嵌套是语言特性,递归调用是逻辑思想。
1
函数嵌套
函数嵌套允许在一个函数中调用另外一个函数,比如有三个函数
例:
funca()
{
funcb();
}
funcb()
{
funcc();
}
funcc()
{
cout
<<
"Hello"
<<endl;
}
这个就叫做嵌套调用,它是一个语言提供的程序设计的方法,也就是语言的特性。
2
递归调用
而递归是一种解决方案,一种思想,将一个大工作分为逐渐减小的小工作,比如说一个和尚要搬50块石头,他想,只要先搬走49块,那剩下的一块就能搬完了,然后考虑那49块,只要先搬走48块,那剩下的一块就能搬完了……,递归是一种思想,只不过在程序中,就是依靠函数嵌套这个特性来实现了。
递归最明显的特点就是,自己调用自己。
例:
funca()
{
if(statement1)
funca();
else
exit(0);
}
概括说,函数嵌套就是函数调用函数,是普遍的,递归就是函数调用自身,使函数嵌套的一个特例。
嵌套调用就是某个函数调用另外一个函数,递归调用是一个函数直接或间接的调用自己。举几个例子:A调用B(嵌套)B调用C(嵌套)A调用A(递归)A调用B
B调用A
(递归)A调用B
B调用C
C调用A
(递归)

热心网友 时间:2024-10-16 21:38

需要明白的是
函数嵌套是语言特性,递归调用是逻辑思想。
函数嵌套允许在一个函数中调用另外一个函数,比如有三个函数
funca()
{
funcb();
}
funcb()
{
funcc();
}
funcc()
{
cout
<<
"Hello"
<<endl;
}
这个就叫做嵌套调用,它是一个语言提供的程序设计的方法,也就是语言的特性。
而递归是一种解决方案,一种思想,将一个大工作分为逐渐减小的小工作,比如说一个和尚要搬50块石头,他想,只要先搬走49块,那剩下的一块就能搬完了,然后考虑那49块,只要先搬走48块,那剩下的一块就能搬完了……,递归是一种思想,只不过在程序中,就是依靠函数嵌套这个特性来实现了。
递归最明显的特点就是,自己调用自己(不就嵌套调用了嘛)。
funca()
{
if(statement1)
funca();
else
exit(0);
}
概括说,函数嵌套就是函数调用函数,是普遍的,递归就是函数调用自身,使函数嵌套的一个特例。
我说的不知道明不明白,有点乱……

热心网友 时间:2024-10-16 21:38

递归调用 就是函数里出现自己调用自己,直接或曲折迂回调用到自己。

嵌套调用就是不同子程序之间相互调用,无论如何曲折迂回,也不出现自己调用自己的情况。

热心网友 时间:2024-10-16 21:39

嵌套调用这个名词是没有任何意义的,看到那本书上有这个名词赶紧扔掉吧!
递归是函数(或过程其他语言)直接或间接调用自已的做法!例如
1)直接递归调用
int
f(int
n){if(n==0)return
1;/*必须有这样的一步*/
return
n*f(n-1);/*当然象这样简单计算不需要用递归!*/
}
2)问接调用
double
g(double
x,int
n);
doube
f(double
x,int
n){if(x<=0&&n<=0)retun
0;
if(n==0)return
0;if(n==1)return
x;
if(n<0)return
f(1/x);
if(n&1)return
x*g(x,n/2);
return
g(x,n/2);
}
double
g(double
x,n){return
f(x*x,n);}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
康佑人生骗人的吗?重疾赔付次数是多少? ...的消息的声音很好听,现在想把我的QQ变成那个声音,怎么弄 我的QQ上线,或者来个消息的时候,提示声音非常不好听?怎么换? 康佑人生骗人的吗?重疾赔付次数是多少? 网吧里有种qq消息声音挺好听的,不知道叫什么名字,在哪里可以找到?_百度... ...的消息的声音很好听,现在想把我的QQ变成那个声音,怎么弄 我的QQ上线,或者来个消息的时候,提示声音非常不好听?怎么换? 网吧里有种qq消息声音挺好听的,不知道叫什么名字,在哪里可以找到?_百度... 租房合同纠纷要怎么解决 有联想S660的人进来 c语言中“函数的定义不可以嵌套,但函数的调用可以嵌套”是什么...446 ...吹浪正淘沙.女郎剪下鸳鸯锦,将向中流匹晚霞的意思 畸胎瘤剥除后病理报告为左卵巢甲状腺肿类癌,已切除左卵巢。请问... 买房子贷款下来了银行是直接把买房的钱打给开发商吗132 卵巢甲状腺肿吃药能消吗 计一次有趣的说歇后语的游戏 作文2 男朋友在跟我认识后,又去撩其他的女孩子,我应该怎么办?1 我的无线鼠标3-4天就用完2节南孚电池,怎么回事呀? 麻烦推荐一下张信哲的经典歌曲..288 在一起后才知道男朋友追我的同时也在追别人?22 请问卵巢甲状腺肿性甲亢与其他甲亢相比 治疗方法上有何不同 有趣的歇后语400字作文5 发现追你的男生同时在追别人,你会怎么办?26 张信哲唱的最经典的歌有哪些? 如何检查确诊卵巢囊肿.ppt 男友跟我在一起了还去追别的女人,怎么办,这样的男人能要吗?6 求张信哲最经典的10首歌38 卵巢甲状腺肿 甲状腺肿大 50岁女性患甲状腺肿,怎样治疗好,... 发现追你的男生同时在追别人,怎么办?7 成都市三鼎行房地产营销策划有限公司怎么样? C语言的函数嵌套调用与函数递归调用有什么区别15 物理学中怎样理解吸热和放热? 举个例子 教教我C语言函数的嵌套调用15 电动车 无刷电机控制器 dc48v&#47;60v 欠压42v&#47;52... 吸热反应和放热反应的图像 明白的拼音是几声?明白的拼音是几声?70 手游梦幻西游人物加点方案什么意思10 休息拼音息字是几声?64 梦幻西游手游大唐贫民怎么加点图104 非洲茉莉花介绍一下用什么土 生日蛋糕不放冰箱会坏吗?就放一个晚上87 懂茉莉花的来指点一下! 梦幻西游手游弓箭手怎么加点的1 有一本小说男主叫无忧,女主是穿越的。架空文,还有学院 ...wps做表格,把表格转换为pdf格式时候,为什么会变成了十几页... c语言中的函数可以嵌套调用也可以递归调用,这句话对吗?6 怎么查看我的支付宝账号318 新婚姻法婚后财产如何分割626 美团取消订单退款 美团删除订单是退款吗 梁山伯和祝英台结婚,他们婚后会幸福吗?4