图5.7两层函数嵌套调用示意图函数的嵌套调用即一个函数在被调用的过程中又调用了另外的一个函数。函数fac和powers的返回值类型均被设计为double型,其主要目的是为了避免n!x:0.5//0.5从键盘输入的数据0.50 powers of e=1.648721//程序执行结果......
2023-11-20
在C语言程序中,不允许函数嵌套定义,各函数平行,不存在上一级函数和下一级函数的问题。但是允许在一个函数的定义中出现对另一个函数的调用,即函数的嵌套调用。这与其他语言的子程序嵌套类似。其关系如图5.9 所示。
图5.9 函数嵌套调用
与子程序嵌套类似,是在执行主函数main()中调用函数a()的语句时,转去执行函数a();在函数a()中调用函数b()时,转去执行函数b();在函数b()执行完毕,返回函数a()的继续执行;函数a()执行完毕,返回主函数main()。
【例5.10】函数嵌套调用举例。
程序运行结果如图5.10 所示。
图5.10 程序运行结果
例5.10 中,主函数main()调用函数fun1(),实参x、y 的值分别传送给函数fun1()的形参a 和b,执行语句“a+=a;b+=b”之后,a 等于4,b 等于14,然后执行语句“c=fun2(a,b)”调用函数fun2()。此时,函数fun1()中实参a、b 的值传送给函数fun2()中对应的形参a、b,进入函数fun2()执行,返回值是2,返回到函数fun1()中的“c=fun2(a,b)”,接着继续执行语句“return c*c”,函数fun1()返回值是4,返回到主函数main()中的printf()函数,输出结果“The result is:4”。
【例5.11】求圆柱体体积。
(www.chuimin.cn)
程序运行结果如图5.11 所示。
图5.11 程序运行结果
【例5.12】统计一批数据中大于平均值的数据总数。
程序运行结果如图5.12 所示。
图5.12 程序运行结果
有关C语言程序设计实用教程的文章
图5.7两层函数嵌套调用示意图函数的嵌套调用即一个函数在被调用的过程中又调用了另外的一个函数。函数fac和powers的返回值类型均被设计为double型,其主要目的是为了避免n!x:0.5//0.5从键盘输入的数据0.50 powers of e=1.648721//程序执行结果......
2023-11-20
在C 语言程序中,是通过对函数的调用来执行函数体,其过程与子程序调用相似。在调用函数时,大多数情况下主调函数和被调函数之间有数据传递。图5.2程序运行结果函数调用在程序中起一个表达式或者语句的作用。在调用函数时,有3 种不同的方式。这就要求该函数必须是有返回值的。getchar 函数调用作为表达式使用,即赋值表达式的右操作。......
2023-10-21
C语言中所有函数的定义都是平行的,也就是说,不能在函数定义中再定义其他函数。但是C语言允许在函数定义中再调用其他函数,这就是函数的嵌套调用。本例可编写两个函数,一个是用来计算平方值的函数f1(),另一个是用来计算阶乘值的函数f2()。图5.4函数的嵌套调用函数的嵌套调用使程序形成了一种自顶向下树型结构,如图5.5所示。一个C语言程序通常不是由少数几个大函数组成,而是由许许多多小函数组成。......
2023-11-18
在C语言中,以函数首部声明函数的形式称为函数原型。使用函数原型是C语言的一个重要特征,主要作用是利用它在程序的编译阶段对调用函数的合法性进行全面检查。......
2023-11-18
在C 语言中,具有一定功能、相对独立的程序段称为函数。无论主函数main()位于程序中的什么位置,程序执行时总是从main()开始。C 语言程序的一般结构如图5.1 所示。它具有以下特点:图5.1C 程序中的函数C 语言允许一个程序由多个源文件组成,每个源文件可以独立编译,一个源文件可以被不同的程序使用。一个C 程序有且仅有一个主函数main,主函数可以放在任何一个源文件中,程序总是从主函数开始执行。......
2023-10-21
一个函数直接或间接地调用自己,称为函数的递归调用。所以函数递归调用的实现必须依靠系统提供一个特殊部件(堆栈)存放未完成的操作,以保证当递归调用结束回溯时不会丢失任何应该执行而没有执行的操作。为了理解函数递归调用的特性,参照例5.9的程序讨论函数递归调用的执行过程,为了讨论方便为程序加上行号。函数递归调用示例。......
2023-11-20
在C 语言中,对文件的基本操作包括文件的打开与关闭、文件的读和写等。表9.1文件操作方式例如:打开当前目录下的C.DAT 文件,这是一个二进制文件,只允许进行读操作,并使fp 指针指向该文件。应该养成在程序终止前关闭所有文件的习惯,如果不关闭文件将会丢失数据。......
2023-10-21
首先数组元素可以作为实参,其用法与变量完全相同。图5.5程序运行结果说明:用数组名作函数参数,应该在主调函数和被调用函数分别定义数组,例中array 是形参数组名,score 是实参数组名,分别在其所在函数中定义,不能只在一方定义。图5.8程序运行结果用数组名作为函数参数时应注意以下几点:形参数组和实参数组的类型必须一致。......
2023-10-21
相关推荐