第八章函数(5503)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.以下叙述中不正确的是(C)。
A.在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。
B.在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。
C.在C中,外部变量的隐含类别是自动存储类别。
D.在C中,函数形参可以说明为register变量。
2.C语言中规定函数的返回值的类型是由(D )。
A.return语句中的表达式类型所决定
B.调用该函数时的主调用函数类型所决定
C.调用该函数时系统临时决定
D.在定义该函数时所指定的函数类型所决定
3.以下所列的各函数首部中,正确的是(C)。
A. void play(var a:integer,var b:integer)
B. void play(int a,b)
C.void play(int a,int b)
D.sub play(a as integer,b as integer)
4. C 语言允许函数类型缺省定义,此时函数值隐含的类型是(B )。
A.float
B.int
C.long
D.double
5.以下函数调用语句中实参的个数是( A )。
exce((v1,v2),(v3,v4,v5),v6);
A.3
B.4
C.5
D.6
6.有参函数的返回值,是通过函数中的( A )语句来获得的。
A.return
B.printf
C.scanf
D.函数说明
7.以下语句错误的是( B)。
A.int x;
B.return x,y;
C.x=100;
D.return 0;
8.以下正确的说法是(A )。
A.实参和与其对应的形参各占用独立的存储单元
B.实参和与其对应的形参共占用一个存储单元
C.只有当实参和与其对应的形参同名时才共占用相同的存储单元
D.形参不占用存储单元
9.以下正确的函数定义是(C )。
A.double fun(int x,y)
B.double fun(int x ; int y)
C.double fun(int x , int y)
D.double fun(x , y)
10.若某个函数中没有返回值,则应在函数类型处写上关键字(A )。
A.void
B.int
C.float
D.double
11.C语言规定,简单变量做实参时,它和对应的形参之间的数据传递方式是
(B )。
A.地址传递
B.单向值传递
C.由用户指定传递方式
D.实参传给形参,再由形参传给实参
12.C语言规定,函数返回值的类型是由( D)决定的。
A.return语句中的表达式类型
B.调用该函数时的主调函数类型
C.调用该函数时由系统临时
D.在定义函数时所指定的函数类型
13.若用数组名作为函数调用的实参,传递给形参的是(A )。
A.数组首元素的地址
B.数组中的全部元素的值
C.数组中第一个元素的值
D.数组元素的个数
14.若有以下定义int f(int x),则变量x为(B )。
A.全局变量
B.局部变量
C.静态变量
D.非法变量
15.一个源文件中定义的全局变量的作用域为(D )。
A.本文件全部范围
B.本程序全部范围
C.本函数全部范围
D.从定义开始至本文件结束
16.在一个C语言程序中(B)。
A.main函数必须出现在所有函数之前
B.main函数可以在任何地方出现
C.main函数必须出现在所有函数之后
D.main函数必须出现在固定位置
17.以下不正确的描述为(D)。
A.不同函数中可以使用相同名字的变量
B.形参是局部变量
C.一个函数内部定义的变量只能在本函数范围内有效
D.在一个内部的复合语句中定义的变量可以在本函数范围内有效
18.以下函数的类型是(C)。
fff(float x)
{ printf (“%d\n”,x*x);}
A.与参数X的类型相同
B.void型
C.int型
D.无法确定
19.以下函数调用语句中,含有的实参个数是(B)。
Func((exp1,exp2),(exp3,exp4,exp5));
A.1
B.2
C.4
D.5
20.C语言中,形参缺省的存储类别是(A)。
A.auto(自动)
B.static(静态)
C.register(寄存器)
D.extern(外部)
21.若x为int型变量,则以下函数fun的类型为(C)。
fun(x) { printf(“%d\n”,x);}
A.返回值为void类型
B.无法确定返回值
C.返回值为int类型
D.无返回值
22.以下叙述正确的是(A)。
A.C程序中各函数之间既允许直接递归调用,也允许间接递归调用
B.C程序中各函数之间不允许直接递归调用,也不允许间接递归调用
C.C程序中各函数允许直接递归调用,不允许间接递归调用
D.C程序中各函数之间不允许直接递归调用,允许间接递归调用
23.以下叙述中不正确的是(C)。
A.一个变量的作用域完全取决于变量定义语句的位置
B.全局变量可以在函数以外的任何部位进行定义
C.局部变量的“生存期”只限于本次函数调用,因此不可能将局部变量的运算结果保存至下一次调用
D.一个变量说明为static存储类别是为于限制其它编译单位的引用
24.以下叙述不正确的是(D)。
A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面
25.下列说法中正确的是(C)。
A.C语言程序总是从第一个定义的函数开始执行
B.在C语言程序中要调用的函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须在程序的开始部分
26.已知:static int a[3][4];则数组a中各元素(B)。
A.可在程序的运行阶段得到初值0
B.可在程序的编译阶段得到初值0
C.不能得到确定的初值
D.可在程序的编译或运行阶段得到初值0
27.一个完整的C源程序是(B )。
A.要由一个主函数或一个以上的非主函数构成
B.由一个且仅由一个主函数和零个以上的非主函数构成
C.要由一个主函数和一个以上的非主函数构成
D.由一个且只有一个主函数或多个非主函数构成
28.以下关于函数的叙述中正确的是( C)。
A.C语言程序将从源程序中第一个函数开始执行
B.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C.C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束
D.main可作为用户标识符,用以定义任意一个函数
29.以下关于函数的叙述中不正确的是(B )。
A.C程序是函数的集合,包括标准库函数和用户自定义函数
B.在C语言程序中,被调用的函数必须在main函数中定义