您好,欢迎访问三七文档
第七章函数一、选择题1.如果在一个函数的复合语句中定义了一个变量,则该变量()。A)只在该复合语句中有效,在该复合语句外无效B)在该函数中任何位置都有效C)在本程序的源文件范围内均有效D)此定义方法错误,其变量为非法变量2.C语言规定,简单变量作实参,它与对应形参之间的数据传递方式是:。A)地址传递;B)单向值传递;C)双向值传递;D)由用户指定传递方式3.以下关于C语言程序中函数的说法正确的是:。A)函数的定义可以嵌套,但函数的调用不可以嵌套;B)函数的定义不可以嵌套,但函数的调用可以嵌套;C)函数的定义和调用均不可以嵌套;D)函数的定义和调用都可以嵌套。4.以下正确的函数形式是:。A)doublefun(intx,inty)B)fun(intx,y){z=x+y;returnz;}{intz;returnz;}C)fun(x,y)D)doublefun(intx,inty){intx,y;doublez;{doublez;z=x+y;returnz;}z=x+y;returnz;}5.以下说法不正确的是:。C语言规定A)实参可以是常量、变量或表达式B)形参可以是常量、变量或表达式C)实参可以是任意类型D)形参应与其对应的实参类型一致或赋值兼容6.在下面的函数声明中,存在着语法错误的是。A)BC(inta,int);B)BC(int,int);C)BC(int,int=5);D)BC(intx,inty);7.以下错误的描述是。函数调用可以A)出现在执行语句中B)出现在一个表达式中C)做为一个函数的实参D)做为一个函数的形参8.下面叙述中正确的是。A)对于用户自己定义的函数,在使用前必须加以说明B)函数可以返回一个值,也可以什么值也不返回C)说明函数时必须明确其参数类型和返回类型D)空函数不完成任何操作,所以在程序设计中没有用处9.下面叙述中错误的是。A)主函数中定义的变量在整个程序中都是有效的B)在其他函数中定义的变量在主函数中也都不能使用C)形式参数也是局部变量D)复合语句中定义的函数只在该复合语句中有效10.下面叙述中正确的是。A)全局变量在定义它的文件中的任何地方都是有效的B)全局变量在程序全部执行过程中一直占用内存单元C)同一文件中的变量不能重名D)使用全局变量有利于程序的模块化和可读性的提高11.若函数的类型和return语句中表达式的类型不一致,则。A)编译时出错B)运行时出现不确定结果C)不会出错,且返回值的类型以return语句中表达式的类型为准D)不会出错,且返回值的类型以函数的类型为准12.在函数的说明和定义时若没有指出函数的类型,则。A)系统自动认为函数类型为整型B)系统自动认为函数类型为实型C)系统自动认为函数类型为字符型D)编译时会出错13.C语言中若不特别声明,则变量的类型被认为是。A)externB)staticC)registerD)auto14.在函数调用语句fun1(fun2(x,y),(x,y),z=x+y);中,fun1的实际参数的个数是。A)3B)7C)4D)515.对函数的调用不可以出现在。A)对一个变量赋初值B)调用函数时传递的实际参数C)函数的形式参数D)引用数组元素[]的运算符中16.若用数组名作为函数调用的实参,传递给形参的是。A)数组的首地址B)数组第一个元素的值C)数组中全部元素的值D)数组元素的个数17.以下正确的说法是。在C语言中:A)实参和与其对应的形参各占用独立的存储单元B)实参和与其对应的形参共占用一个存储单元C)只有当实参和与其对应的形参同名时才共占用存储单元D)形参是虚拟的,不占用存储单元18.有如下程序intfunc(inta,intb){return(a+b);}主函数包含程序段:intx=2,y=5,z=8,r;r=func(func(x,y),z);则r的值为。A)12B)13C)14D)1519.以下C语言中,对函数不正确的描述是。A)当用数组名作形参时,形参数组改变可使实参数组随之改变B)允许函数递归调用C)函数形参的作用范围只是局限于所定义的函数内D)函数说明必须在主调函数之前20.一个数据类型为void的函数中可以没有return语句,那么函数的被调用时。A)没有返回值B)返回一个系统默认值B)返回值由用户临时决定D)返回一个不确定的值二、填空题1函数直接或者间接地自己调用自己,被称为函数的____。2在C语言中,某函数在一个程序中被调用的次数是____限制的。3一个C程序可以由一个或多个____组成。4从用户的角度看,C语言中的函数有两种,即库函数和____。5在定义函数时,函数名后面的括号中的变量名称为____。6在调用函数时函数名括号后面的变量名称为____。7在函数内部定义只在本函数内有效的变量称为____。8在函数外部定义的变量称为____。9在C语言中,一个函数一般由两个部分组成,分别是___和函数体。10函数调用时,实参和形参分别占用不同的内存单元,数据传递时按照___的方式进行。三、判断题1.不同函数中可以使用相同名字的变量,它们代表不同的对象,互不干扰。2.通过return语句,函数可以带回一个或一个以上的返回值。3.C程序中有调用关系的所有函数必须放在同一个源程序文件中。4.如果被调用函数的定义出现在主调函数之前,可以不必加以声明。5.C程序中,任何非主函数都可以调用其他任何非主函数。6.如果某个函数在定义时省略了存储类型,则默认的存储类型是int。7.函数定义时,可以不指定形参的类型,函数调用时由实参的类型决定形参的类型。8.若i为某函数func之内说明的变量,则当func执行完后,i值无定义。9.在C语言中,所有函数都是平行的,即在定义函数时是互相独立的,一个函数并不从属于另一个函数。10.函数内定义的变量是外部变量,而在函数之外定义的变量称为局部变量,外部变量是全局变量。答案:一、ABBDBCDBABDADACAADDA二、递归调用无函数自定义函数形式参数实际参数局部变量全局变量函数首部单向值传递三、正确错误错误正确正确正确错误正确正确错误
本文标题:C语言第7章函数
链接地址:https://www.777doc.com/doc-2909062 .html