文档详情

函数和编译预处理..doc

发布:2016-12-27约1.26万字共14页下载文档
文本预览下载声明
函数和编译预处理(第五章) 单项选择题 1.关于函数,以下正确的描述是( B) A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数的定义可以嵌套,函数的调用也可以嵌套 D. 函数的定义和函数的调用都不可以嵌套 2.关键字inline用于定义内联函数,定义时,是将该关键字( D ) A. 取代定义函数的类型标识符 B. 取代被定义的函数名 C. 加在类型标识符之后 D. 加在类型标识符之前 3.以下不正确的描述为( B ) A. 在函数之外定义的变量称为外部变量,外部变量是全局变量。 B. 在函数之内说明的外部变量是局部变量,仅在本函数中有效。 C. 在函数之外说明的静态变量也是全局变量,其作用域是文件作用域。 D. 文件作用的域范围是一个程序文件,但必须符合“定义在前,使用在后”的规则。 4.以下正确的描述为( C ) A. 每个C++程序必须在开头用预处理命令 #include iostream.h B. 预处理命令必须位于C++源程序的首部 C. 在C++中,预处理命令都以 # 开头 D. C++语言的预处理命令只能实现宏定义和条件编译的功能 5.在下面的函数原型说明中,存在着语法错误的是( D ) A.?? void?BC(int?a,int);?????????? B. ?void?BD(int , int); C.?? void?BE(int , int=5);??????D.? int?BF(int?x ; int?y); 6.下列哪个不是重载函数在调用时选择的依据( C ) A. 形参类型 B. 形参个数 C. 函数返回值类型 D. 函数名 7.在一个源程序文件中有以下函数定义,其中( D )是重载函数。 A.ABC B. BCD C. ACD D. 全部 A) int sum(float x,int y) B) float sum(float x,int y,char z) {...} {...} C) float sum(float x,float y) D) int sum(int x,int y,char z) {...} {...} 8.有一个函数原型abc(float x,float y);该函数的返回值类型为( C ) A. void B. double C. int D. float 9.在程序中,函数声明语句正确位置是( D ) A. 随便任何位置 B. 不包含在另一函数中的任何位置。 C. 该函数使用前的任何位置 D. 该函数使用前的任何位置,但不包含在另一函数中 10.C++构造内联函数的思想是( A ) A. 用空间换时间 B. 用时间换空间 C. 用形参换实参 D. 用实参换形参 11.在以下存储类型中,( D )是用于定义动态类型的变量。 A. static 和auto B. register 和extern C. register和 static D. auto 和register 12.下列各类变量,哪个不是局部变量( B ) A. register型变量 B. 外部static变量 C. auto型变量 D. 函数形参 13.以下关于调用函数时,形、实参结合的通用规则不正确的描述为( B ) A. 实参可以是变量,也可以是常数或者表达式。 B. 实参的个数可以多于形参,也可以少于形参。 C. 系统将为形参分配内存单元。 D. 实参必须与对应的形参类型相兼容。 14.假设有宏定义: #define NUM 15 #define DNUM NUM+NUM 则表达式DNUM/2+NUM*2的值为( C ) A. 45 B. 67 C. 52 D. 90 15.对于一个功能不太复杂,并且要求加快执行速度,选用( A )合适。 A. 内联函数 B. 重载函数 C. 递归调用 D. 嵌套调用 16.若有以下函数调用语句: fun((a+b,(x,y)),fun(n+k,d),(a,b));
显示全部
相似文档