一、单项选择 1. 题号:4889
以下函数调用语句中,实参的个数是(). exce((v1,v2),(v3,v4,v5),v6); A、3 B、4 C、5 D、6
// (v1,v2)是一个逗号表达式,(v3,v4,v5)也是一个逗号表达式 答案:A
2. 题号:4093
关于return语句,下列正确的说法是(). A、可以在同一个函数中,出现多次 B、在主函数和其他函数中,均可出现 C、必须在每个函数中,出现
D、只能在除主函数之外的函数中,出现一次
//只能执行其中的一个的return 语句。并且函数遇到return语句,结束函数的执行。 答案:A
3. 题号:4535
数组名作为实参数传递给函数时,数组名被处理为(). A、该数组的首地址 B、该数组的元素个数 C、该数组中各元素的值 D、该数组的长度 答案:A
4. 题号:4525
在C语言的函数中,下列正确的说法是(). A、数组名不能作形参 B、可以有也可以没有形参 C、形参必须是变量名 D、必须有形参 答案:B
5. 题号:4083
以下正确的函数定义形式是(). A、 double fun(int x,int y)
B、 double fun(int x;int y)//错在分号
C、 double fun(int x,y);//错在形参y没有类型
D、 double fun(int x,int y);//错在函数头后没有分号 答案:A
6. 题号:4232
C语言程序中,必须有的函数是(). A、main()
B、#include\C、scanf D、printf 答案:A
7. 题号:4048
下面对函数的叙述,正确的是().
A、函数中无论是否有 return语句,都能返回正确值 B、函数中没有 return语句,说明不带回值 C、函数不能嵌套定义
D、函数的返回值是通过 return语句获得的 答案:C
8. 题号:4073
在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是(). A、传递方式由用户指定
B、由实参传给形参,再由形参传回实参 C、地址传递 D、单向值传递 答案:D
9. 题号:5119
下列关于函数的叙述中正确的是(). A、每个函数都可以单独运行
//主函数可以单独运行。其它的函数都需要被调用才能被执行。 B、在一个函数内部可以定义另一个函数//不可以嵌套定义 C、每个函数都可以被单独编译
D、每个函数都可以被其他函数调用(包括main()函数)//不包括主函数 答案:C
10. 题号:4787
设函数的调用形式如下:f((x1,x2),(y1,y2,y3)),则函数有()个形参. A、5 B、3 C、2 D、4 答案:C
11. 题号:4901
在C语言中,形参的缺省存储类是(). A、static B、register C、auto D、extern 答案:C
12. 题号:4507
C语言规定,在一个源程序中,main()函数的位置. A、必须在最开始
B、必须在系统调用的库函数的后面 C、可以任意 D、必须在最后 答案:C
13. 题号:4847
以下叙述中,正确的是().
A、main()可作为用户标识符,用以命名任意一个函数作为主函数
B、C语言程序将从源程序中,第一个函数开始执行
C、可以在程序中,由用户指定任意一个函数作为主函数,程序将从此开始执行 D、C语言规定必须用main()作为主函数名,程序将从此开始执行,在此结束 答案:D
14. 题号:5137 以下函数的类型是 fff(float x) {
printf(\}
//函数返回值省略。默认为int型。 A、void 类型 B、int类型
C、与参数x的类型相同 D、无法确定 答案:B
15. 题号:4403
C语言规定,在一个C程序中,main()函数的位置().
A、可以在任意位置 B、必须在程序的最后 C、必须在程序的开始
D、必须在系统调用的库函数之后 答案:A
16. 题号:4112
C语言规定,函数返回值的类型是(). A、由return语句中的表达式类型所决定 B、由调用该函数时的主调函数类型所决定 C、由调用该函数时系统临时决定
D、由定义该函数时所指定的数值类型决定 答案:D
17. 题号:4804
以下所列的函数\首部\中,正确的是().() A、void play(int a,b)
B、void play(int a,int b) C、void play(a:int,b:int)
D、void play(a as int,b as int) 答案:B
18. 题号:4432 有以下函数定义:
int fun(double a,double b) {return a*b;}
若以下选项中,所用变量都已正确定义并赋值,错误的函数调用是(). A、z=fun(fun(x,y),fun(x,y)); B、z=fun(fun(x,y)x,y); C、if(fun(x,y)){……}
D、fun(x,y); 答案:B
19. 题号:5050
对于void 类型函数,调用时不可作为(). A、if语句的成分语句 B、表达式
C、循环体里的语句
D、自定义函数体中的语句
//无返回值函数只能以语句形式调用。不可以作为表达式或实参 答案:B
20. 题号:4269
若使用一维数组名作函数实参,则以下正确的说法是(). A、必须在主调函数中,说明此数组的大小 B、实参数组类型与形参数组类型可以不匹配 C、实参数组名与形参数组名必须一致
D、在被调用函数中,不需要考虑形参数组的大小 答案:A
21. 题号:4696
在C语言中,调用函数除函数名外,还必须有(). A、实际参数 B、()
C、函数预说明 D、函数返回值 答案:B
22. 题号:4892
以下错误的描述是:函数调用可以(). A、做为一个函数的实参 B、做为一个函数的形参 C、出现在一个表达式中 D、出现在执行语句中
//函数调用形式一共有三种:独立语句形式。表达式或函数的实参 答案:B
23. 题号:4256
当调用函数时,实参是一个数组名,则向函数传送的是(). A、数组每个元素中的值 B、数组的首地址 C、数组的长度
D、数组每一个元素的地址 答案:B
24. 题号:5014
若用数组名作为函数的实参,传递给形参的是(). A、数组的首地址 B、数组元素的个数 C、数组第一个元素的值 D、数组中,全部元素的值 答案:A
25. 题号:4843
如果在一个函数中的复合语句中,定义了一个变量,以下正确的说法是(). A、该变量在本程序范围内均有效 B、该变量只在该复合语句中,有效 C、该变量在该函数中,有效 D、该变量在主函数中,有效 答案:B
26. 题号:4319
C语言中,规定,程序中,各函数之间().
A、既允许直接递归调用也允许间接递归调用 B、允许直接递归调用不允许间接递归调用 C、不允许直接递归调用允许间接递归调用 D、不允许直接递归调用也不允许间接递归调用 答案:A
27. 题号:5062
凡是函数中,未指定存储类别的局部变量,其隐含的存储类别为(). A、自动(auto) B、静态(static) C、外部(extern) D、寄存器(register) 答案:A
28. 题号:4672
以下叙述中,正确的是().
A、构成C程序的基本单位是函数
B、main()函数必须放在其它函数之前
C、所有被调用的函数一定要在调用之前进行定义 D、可以在一个函数中,定义另一个函数 答案:A
29. 题号:4236
全局变量的定义不可能在(). A、最后一行 B、文件外面 C、函数内部 D、函数外面 答案:C
30. 题号:4754
以下对C语言函数的描述中正确的是().
A、C程序中有调用关系的所有函数必须放在同一个程序文件中 B、C函数既可以嵌套定义又可以递归调用//不可以嵌套定义
C、函数必须有返回值,否,则不能使用函数//函数返回值可以为void D、C程序必须由一个或一个以上的函数组成 答案:D
31. 题号:4045
在C语言中,变量的隐含存储类别是(). A、static B、auto