资源描述:
《C语言function_test》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、函数测试题A卷1.单项选择题(1)C语言总是从函数开始执行。AA.mainB.处于最前的C.处于最后的D.随机选一个(2)函数在定义时,省略函数类型说明符,则该函数值的类型为。AA.intB.floatC.longD.double(2)以下函数,真正地没有返回值。BA.inta(){inta=2;return(a);}B.voidb(){printf("c");}C.inta(){inta=2;returna;}D.以上都是(3)在C语言中,有关函数的说法,以下正确的是。AA.函数可嵌套定义,也可嵌套调用B.函数可嵌套定义,但不可嵌套调用C.函数不可嵌套定义,
2、但可嵌套调用D.函数不可嵌套定义,也不可嵌套调用(4)以下函数调用语句中,含有实参的个数为。Cfun((2,3),(4,5+6,7));A.1B.2C.5D.6(5)函数调用可以在。DA.函数表达式中B.函数语句中C.函数参数中D.以上都是(6)被调函数返回给主调函数的值称为。CA.形参B.实参C.返回值D.参数(7),可以不进行函数类型说明。DA.被调函数的返回值是整型或字符型时B.被调函数的定义在主调函数定义之前时C.在所有函数定义前,已在函数外预先说明了被调函数类型D.以上都是(8)被调函数通过语句,将值返回给主调函数。DA.ifB.forC.while
3、D.return(9)被调函数调用结束后,返回到。DA.主调函数中该被调函数调用语句处B.主函数中该被调函数调用语句处C.主调函数中该被调函数调用语句的前一语句D.主调函数中该被调函数调用语句的后一语句(10)以下对C语言函数的有关描述中,正确的是。AA.在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B.C函数既可以嵌套定义又可递归调用C.函数必须有返回值,否则不能使用函数D.C程序中有调用关系的所有函数必须放在同一个源程序文件中(11)C语言中函数的隐含存储类型是。CA.autoB.staticC.externD.无存储类型(12)能把
4、函数处理结果的两个数据返回给主调函数,在下面的方法中不正确的是。AA.return这两个数B.形参用两个元素的数组C.形参用两个这种数据类型的指针D.用两个全局变量(13)C语言可执行程序从什么地方开始执行()。CA.程序中第一条可执行语句B.程序中第一个函数C.程序中的main函数D.包含文件中的第一个函数(14)有一个函数原型如下所示,则该函数的返回类型为()。Cabc(floatx,floaty);A.voidB.doubleC.intD.float2.填空题(1)变量的作用域主要取决于变量,变量的生存期既取决于变量,又取决于变量。所处的位置,所处的位置
5、,存储类型(2)说明变量时,若省略存储类型符,系统默认其为存储类别,该存储类别的类型符为:。动态,auto(3)静态型局部变量的作用域是,生存期是。它所在的局部,整个程序(4)函数中的形参和调用时的实参都是数组名时,传递方式为,都是变量时,传递方式为。址传递,值传递(5)函数的形式参数的作用域为,全局的外部变量和函数体内定义的局部变量重名时,_________变量优先。该函数中,局部(6)若自定义函数要求返回一个值,则应在该函数体中有一条语句,若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说明符。return,void(7)若函数的形式参数是指针类
6、型,则实参可以是或。指针,数组名(8)函数的参数为char*类型时,形参与实参结合的传递方式为。址传递(9)函数的实参为常量时,形参与实参结合的传递方式为。值传递(10)下面这个函数的功能是求两个整数的积,并通过形参传回结果,请填空。intintint**resultvoidmul(___x,___y,___result){___=x*y;}3.判断题(×)(1)函数说明指的是在程序中设定一个函数模块。 (√)(2)形参只有在被调用时才分配存储空间。 (×)(3) 在C的函数中,最好使用全局变量。 (×)(4)在调用函数时,实参传值给形参,调用结束时,形参值传
7、给实参。 (√)(5)所有函数定义都是并行的,相互独立的。 (×)(6) 函数的隐含存储类型是extern。 (×)(7) 形参可以是常量、变量或表达式。 (×)(8) 函数调用可以作为一个函数的形参。(√)(9) C语言规定,实参应与其对应的形参类型一致。 (×)(10) 定义函数时,形参的类型说明可以放在函数体内。 4.程序填空题(1)对数组按值从大到小的顺序排序后输出,请填空。#includevoidmain(){floata[7]={2,6,3,8,3,12,9};inti ;voidsort(float*,int);;for(i=0
8、;i<7;i++)printf("%f