正在加载图片...
第2章程序设计语言基础 4.函数 函数是程序模块的主要成分,它是一段具有独立功能的程序。函数的使用涉及3个概 念,即函数定义、函数声明和函数调用。 (I)函数定义。包括函数首部和函数体两个部分。函数的定义描述了函数做什么和怎 么做。 (2)函数声明。函数应该先声明后引用。函数声明定义了函数原型。声明函数原型的 目的在于告诉编译器传递给函数的参数个数、类型以及函数返回值的类型,参数表中仅需 要依次列出函数定义中的参数类型。函数原型可以使编译器检查源程序中对函数的调用是 否正确。 (3)函数调用。当需要在一个函数(称为主调函数)中使用另一个函数(称为被调函数)实 现的功能时,便以函数名字进行调用,称为函数调用。调用函数和被调用函数之间交换信 息的方法主要有两种:一种是由被调用函数把返回值返回给主调函数:另一种是通过参数 带回信息。函数调用时实参和形参间交换信息的方法有传值调用和引用调用两种。 ①传值调用(Call by Value)。若实现函数调用时实参向形式参数传递相应类型的值(副 本),则称为传值调用。这种方式下形式参数不能向实际参数传递信息。在C语言中,要实 现被调用函数对实际参数的修改,必须用指针作形参。即调用时需要先对实参进行取地址 运算,然后将实参的地址传递给指针形参,本质上仍属于传值调用。这种方式实现了间接 内存访问。 ②引用调用(Call by Reference)。引用是C+中增加的数据类型,当形式参数为引用 类型时,形参名实际上是实参的别名,函数中对形参的访问和修改实际上就是针对相应实 际参数所作的访问和改变。 2.1.2典型例题分析 例1以下关于解释程序和编译程序的叙述中,正确的是(20)。(2013年上半年试题20) (20)A.编译程序和解释程序都生成源程序的目标程序 B.编译程序和解释程序都不生成源程序的目标程序 C.编译程序生成源程序的目标程序,解释程序则不然 D.编译程序不生成源程序的目标程序,而解释程序反之 解析:编译程序也称编译器,将源程序翻译成目标语言程序,然后在计算机上运行目 标程序。虽然执行效率高,但编写出来的程序可读性很差,且难以修改和维护。 解释程序:也称解释器,它或者直接解释执行源程序,或者将源程序翻译成某种中间 代码后再加以执行。 答案:C 例2以下关于传值调用与引用调用的叙述中,正确的是(21)。(2013年上半年试题21) ①在传值调用方式下,可以实现形参和实参间双向传递数据的效果 ②在传值调用方式下,实参可以是变量,也可以是常量和表达式 ③在引用调用方式下,可以实现形参和实参间双向传递数据的效果 ……>5151 第 2 章 程序设计语言基础 4.函数 函数是程程模块解各各程程,它是一段具有独立功能解程程。函数解使调涉控 3 个概 念,即函数定程、函数声明解函数调调。 (1) 函数定程。包括函数首部解函数体两个部程。函数解定程描述了函数做什么解怎 么做。 (2) 函数声明。函数应该先声明后引调。函数声明定程了函数解型。声明函数解型解 目解在于告诉汇编器控递给函数解参数个数、各型控控函数返回值解各型,参数表中仅需 各依次列出函数定程中解参数各型。函数解型可控使汇编器检查源程程中对函数解调调是 否正确。 (3) 函数调调。当需各在一个函数(称为各调函数)中使调另一个函数(称为被调函数)实 现解功能时,便控函数名字进行调调,称为函数调调。调调函数解被调调函数之间交换信 息解方法各各有两种:一种是由被调调函数把返回值返回给各调函数;另一种是通控参数 带回信息。函数调调时实参解形参间交换信息解方法有控值调调解引调调调两种。 ① 控值调调(Call by Value)。若实现函数调调时实参向形式参数控递相应各型解值(副 解),则称为控值调调。这种方式下形式参数不能向实际参数控递信息。在 C 程程中,各实 现被调调函数对实际参数解修改,必须调指针解形参。即调调时需各先对实参进行取地址 运运,然后将实参解地址控递给指针形参,解质上仍属于控值调调。这种方式实现了间接 内存访问。 ② 引调调调(Call by Reference )。引调是 C++中增加解数数各型,当形式参数为引调 各型时,形参名实际上是实参解别名,函数中对形参解访问解修改实际上就是针对相应实 际参数所解解访问解改变。 2.1.2 典型例题分析 例 1 控下关于解解程程解汇编程程解叙述中,正确解是 (20) 。(2013 年上半年试题 20) (20) A. 汇编程程解解解程程都生程源程程解目标程程 B. 汇编程程解解解程程都不生程源程程解目标程程 C. 汇编程程生程源程程解目标程程,解解程程则不然 D. 汇编程程不生程源程程解目标程程,而解解程程反之 解析:汇编程程也称汇编器,将源程程翻编程目标程程程程,然后在程运机上运行目 标程程。虽然执行效率低,但汇写出来解程程可但性很但,且且控修改解维且。 解解程程:也称解解器,它或者直接解解执行源程程,或者将源程程翻编程某种中间 代码后再加控执行。 答案:C 例 2 控下关于控值调调与引调调调解叙述中,正确解是 (21) 。(2013 年上半年试题 21) ① 在控值调调方式下,可控实现形参解实参间双向控递数数解效果 ② 在控值调调方式下,实参可控是变量,也可控是常量解表达式 ③ 在引调调调方式下,可控实现形参解实参间双向控递数数解效果
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有