当前位置:文档之家› C语言程序设计 函数的嵌套调用

C语言程序设计 函数的嵌套调用

【例 4-10】用函数嵌套计算 1!+2!+3!+……n!。 程序设计思路:本程序需要定义两个函数,一个是求 n!的函umofFac(),循环调用 n 次 fac()函数求用来求和。主函数中输入一 个整数 n,调用 sum()函数求阶层的和。完整程序如下:
… 调用 fun1()函数 … }
fun1() {
… 调用 fun2()函数 … return; }
图 4-6 函数嵌套调用的执行过程
fun2() {
… … return ; }
函数嵌套调用的执行过程是:程序从 main()函数开始执行,遇到调用 fun1()的语句时, 就转去执行 fun1() 函数,执行 fun1()时遇到调用 fun2()的语句,再转去执行 fun2()函数, 在 fun2()函数中遇到 return 语句,则返回到调用函数 fun1()中调用 fun2()语句处接着执 行 fun1()的其他语句,遇到 return 语句再返回到调用函数 main()函数中调用 fun1()语句 处继续执行,主函数执行完后整个程序就执行完了。
4.5 函数的嵌套调用
在主函数之外,其它函数之间也可以建立调用关系。这就存在着函数之间分层调用的关 系,连续起来看,就是在调用一个函数的过程中,又在调用另一个函数,这是各种语言规则 允许的,其调用方式被称为嵌套调用。C 语言不允许嵌套定义函数,而允许嵌套调用。嵌套 调用如图 4-5 所示:
main() {
/*程序名:4_10.c*/
/*功能: 用嵌套求阶层 1!+2!+3!+……n!的和*/
n 的阶层可能超出整型范围,所以存放阶层的变量以及函数返回值要定义为长整型的。
相关主题