A.3
B.5
C.1
D。
4
参考答案
B
37不能放在声明区的语句是__________。
A。
if语句
B。
变量定义语句
C.函数声明语句
D.类定义语句
参考答案
A
38在函数内部或复合语句内部定义的变量称为____________。
A.内部变量
B.外部变量
C.局部变量
D.全局变量
参考答案
C
39下列函数中,正确的递归函数是( )。
A.
intFun(intn){
if(n〈1)
return1;
else
returnn*Fun(n+1);
}
B.
intFun(intn){
if(abs(n)<1)
return 1;
else
return n*Fun(n/2);
}
C。
intFun(intn){
if(n〉1)
return1;
else
returnn*Fun(n*2);
}
D.
intFun(intn){
if(n>1)
return1;
else
returnn*Fun(n—1);
}
参考答案
B
40当一个函数返回值类型为int时,定义时函数的类型应该为( )。
A.任意
B.void
C。
int
D.无
参考答案
C
41下列描述正确的是()
A.不是每个C++程序都必须包含预处理命令#include〈iostream>。
B。
C++程序必须包含return语句。
C。
C++程序中的变量必须定义在主函数的内部。
D.C++程序中的符号变量可以不进行定义。
参考答案
A
42考虑函数原型void test(inta,intb=7,charz=2),下面的函数调用中,属于不合法调用的是。
A.test(5)
B.test(5,8)
C。
test(5,6,7)
D.test()
参考答案
D
43在C++程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序的执行速度,则应该选用( ).
A。
内联函数
B。
重载函数
C。
递归调用
D。
嵌套调用
参考答案
A
44以下有关函数存储类别的说明不正确的是().
A.静态函数用static定义
B。
必须加extern关键字定义外部函数
C。
内部函数不能在被定义文件外调用
D。
定义文件外调用外部函数,必须用extern声明
参考答案
B
45在不同文件中,对全局变量的引用要加()关键字先行声明。
A。
auto
B.register
C.static
D。
extern
参考答案
D
46inline关键字的含义是_______。
A.外联
B。
内联
C.宏定义
D.调用函数定义
参考答案
B
47关于作用域与生存周期,说法错误的是()。
A.局部变量只在定义它的函数体中有效
B.全局变量的作用域是整个程序
C。
局部变量在定义它的函数第1次被调用时初始化,以后可以直接使用
D.全局变量只初始化1次
参考答案
C
48关于内联函数,以下说法正确的是。
()
A。
内联函数不需要经过编译
B。
内联函数适用于函数体比较复杂的情况
C。
内联函数不能提高程序的执行效率
D.声明内联函数只需要在函数声明前加inline关键字
参考答案
D
49使用sin(x)库函数,必须包括的头文件正确形式为()。
A。
iostream。
h
B。
math.h
C.stdlib。
h
D.string。
h
参考答案
B
50下列关于实参和形参说法错误的是()。
A。
实参可以是变量、常量、或表达式。
B.实参与形参的类型必须一致,否则会发生“类型不匹配"的错误.
C。
实参对形参的数据传递是单向传递,调用结束后,实参单元被释放.
D。
形参必须是变量。
参考答案
C
51关于内联函数说法错误的是()。
A。
不是任何一个函数都可定义成内联函数。
B.内联函数的函数体内不能含有复杂的结构控制语句。
C。
递归函数可以被用来作为内联函数。
D。
内联函数一般适合于只有几行语句的小函数。
参考答案
C
52在C++中,关于下列设置参数默认的描述中,()是正确的。
A。
不允许设置参数的默认值。
B。
设置参数默认值只能在定义函数时设置.
C。
设置参数默认值时,应该是先设置右边的再设置左边的。
D.设置参数默认值时,应该全部参数都设置。
参考答案
C
53下列存储类标识符中,()的可见性与存在性不一致。
A.extern
B。
auto
C。
内部static;
D.register
参考答案
C
54以下对C++语言函数的描述中,正确的是
A.C++程序由一个或一个以上的函数组成
B.C++函数既可以嵌套定义又可以递归调用
C。
函数必须有返回值,否则不能使用函数
D.C++程序中调用关系的所有函数必须放在同一个程序文件中
参考答案
A
55C++中规定,程序中各函数之间_____。
A.既允许直接递归调用也允许间接递归调用
B.不允许直接递归调用也不允许间接递归调用
C.允许直接递归调用不允许间接递归调用
D。
不允许直接递归调用允许间接递归调用
参考答案
A
56引入内联函数的目的是为了( )。
A.节省空间
B.提高函数调用的效率
C.方便变量的使用
D.扩大局部变量的使用范围
参考答案
B
57下列说法不正确的是____。
A。
函数必须有返回值
B。
函数的返回值是通过return语句返回到主调函数的。
C.return语句后的括号可要可不要
D。
有函数值的函数,它返回的函数值的类型是确定的
参考答案
A
58以下正确的函数定义形式是_____。
A。
doublefun(intx,inty){}
B.doublefun(intx;inty){}
C.doublefun(intx,inty);{}
D.double fun(intx,y);{}
参考答案
A
59简单变量做实参时,它和对应形参之间的数据传递方式为_____。
A.地址传递
B.单向值传递
C。
由实参传给形参,再由形参传回给实参
D。
由用户指定传递方式
参考答案
B
60函数原型是指下面哪种格式______。
A。
函数名([参数1类型][,参数2类型][…])
B。
函数类型关键字函数名([参数1类型][,参数2类型][…]);
C。
函数类型关键字函数名(标识符1][,标识符2][…]);
D. 函数名(参数1类型,标识符1][,参数2类型,标识符2][…]);
参考答案
B
61在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则______。
A。
称为函数的直接递归调用
B.称为函数的间接递归调用
C.称为函数的循环调用
D.C++中不允许这样的递归调用
参考答案
B
62以下有关函数参数的叙述不正确的是_____.
A.函数的形参命名可以任意,只要符合标识符规则。
B。
实参只能是常数
C.形参的值与实参的值不一定时刻保持一致。
D。
函数参数的值也可以是内存单元地址
参考答案
B
63在一个被调用函数中,关于return语句使用的描述,()是错误的.
A。
被调用函数中可以不用return语句。
B.被调用函数中可以使用多个return语句。
C.被调用函数中,如果有返回值,就一定要有return语句.
D.被调用函数中,一个return语句可返回多个值给调用函数。
参考答案
D
64以下哪些情况适合使用内联函数()。
A。
函数体含有循环语句
B。
函数体含有递归语句
C。
函数代码少、频繁调用
D。
函数代码多、不常调用
参考答案
C
65在C++中,关于下列设置参数默认值的描述中,( )是正确的。
A.不允许设置参数的默认值
B.设置参数默认值可以在定义函数时设置
C。
设置参数默认值时,应该是先设置左边的再设置右边的
D。
设置参数默认值时,应该全部参数都设置
参考答案
B
66已知函数f(inta,intb),则以下函数调用正确的是()。
A。
f(int1,int2)
B.f(1,2)
C.f
(1)
D.f(inta,intb)
参考答案
B
67下列程序运行结果为:
#include#defineP3#defineS(a)P*a*avoidmain(){intar;ar=S(3+5);cout<〈”"〈A。
192
B。
29
C。
27
D.25
参考答案
B
68为了提高程序的运行速度,在函数中对于整型的变量可以使用()型。
A。
auto
B。
register
C.static
D.extern
参考答案
B
69对于void类型函数,调用时不可作为().
A。
自定义函数体中的语句
B。
循环体里的语句
C。
if语句的成分语句
D。
表达式
参考答案
D
70关于建立函数的目的,以下正确的说法是()。
A.提高程序的执行效率
B。
提高程序的编程效率
C.减少程序的执行时间
D.减少程序文件的个数
参考答案
B
71以下对C++语言函数的描述中,正确的是().
A.C++程序必须由一个或一个以上的函数组成
B。
C函数既可以嵌套定义又可以递归调用
C.函数必须有返回值,否则不能使用函数
D。
C++程序中有调用关系的所有函数必须放在同一个程序文件中
参考答案
A
72决定C++语言中函数的返回值类型的是__________。
A.return语句中的表达式类型
B.调用该函数时系统随机产生的类型
C。
调用该函数时的主调用函数类型
D.在定义该函数时所指定的数据类型
参考答案
D
73关于return语句,下列正确的说法是()。
A。
在主函数和其他任何函数中均可出现
B.必须在每个函数中出现
C.可以在同一个函数中出现多次
D.只能在除主函数之外的函数中出现一次
参考答案
C
74下列说法不正确的是().
A。
主函数main中定义的变量在整个文件或程序中有效
B.不同函数中,可以使用相同名字的变量
C。
形式参数是局部变量
D。
在一个函数内部,可以在复合语句中定义变量,这些变量只在复合语句中有效
参考答案
A
75C++程序中的宏展开是在().
A.连接时进行的
B.程序执行时进行的
C。
编译前预处理时进行的
D.编辑时进行的
参考答案
C
76C++控制台程序中必须有的函数是().
A.#include〈iostream.h〉
B.main
C。
cout
D.cin
参考答案
B
77以下叙述中正确的是()。
A.在程序的一行上可以出现多个有效的预处理命令行
B。
使用带参的宏时,参数的类型应与宏定义时的一致
C.宏替换不占用运行时间,只占编译时间
D。
在定义(#defineCR045)中CR是称为”宏名"的标识符
参考答案
C
78以下叙述不正确的是().
A.一个C源程序可由一个或多个函数组成
B。
一个C源程序必须包含一个main函数
C.C++程序的基本组成单位是函数
D.在C++程序中,注释说明只能位于一条语句的后面
参考答案
D
79下列定义不正确的是()。
A.#definePI3。
141592
B。
#defineS345
C。
intmax(x,y);intx,y;{}
D。
staticcharc;
参考答案
C
80若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是().
A.函数调用可以作为独立的语句存在
B.函数调用可以作为一个函数的实参
C。
函数调用可以出现在表达式中
D。
函数调用可以作为一个函数的形参
参考答案
D
81以下正确的说法是().
A.定义函数时,形参的类型说明可以放在函数体内
B。
return后边的值不能为表达式
C.如果函数值的类型与返回值类型不一致,以函数值类型为准
D。
如果形参与实参类型不一致,以实参类型为准
参考答案
C
82通过函数来实现一种不太复杂的功能,并且要求加快执行速度,C++中采用( )。
A。
重载函数
B.内联函数
C.递归函数
D。
嵌套函数
参考答案
B
83下述关于C++函数的叙述中,正确的是( )。
A。
每个函数至少要具有一个参数
B。
每个函数都必须返回一个值
C.函数在被调用之前必须先声明
D。
函数不能自己调用自己
参考答案
C
84已知:
int m=10; 下列表示引用的方法中,正确的是( ).
A。
int&x=m;
B。
int&x=10;
C.int&x;
D。
float&t=&m
参考答案
A
85下列程序段的输出结果是()。
intadd(intx=20,inty=10);voidmain(){inta(30),b(50);cout<〈add(a,10)〈〈endl;}intadd(intx,inty){returnx+y;}
A。
40
B。
30
C.50
D。
10
参考答案
A
86以下叙述中正确的是()。
A。
全局变量的作用域一定比局部变量的作用域范围大
B。
静态(static)类别变量的生存期贯穿于整个程序的运行期间
C。
函数的形参都属于全局变量
D。
未在定义语句中赋初值的auto变量和static变量的初值都是随机值
参考答案
B
87以下正确的说法是:
在C++语言中进行值传递时().
A.实参和与其对应的形参各占用独立的存储单元
B。
实参和与其对应的形参共占用一个存储单元
C.只有当实参和与其对应的形参同名时才共占用存储单元
D。
形参是虚拟的,不占用存储单元
参考答案
A
88全局变量的定义不可能在()。
A.函数内部
B。
函数外面
C.文