1、【章节】第 1 章 C+基础知识 【知识点】 1、 C+程序的构成与书写形式; 2、 基本数据类型,常量、变量和表达式 3、 C+的标准输入输出 【单选题】 1、在 C+中,源程序变为可执行程序的正确顺序应该是 ( ) 。 A. 编辑、链接、编译、执行 B. 编辑、编译、链接、执行 C. 编译、编辑、链接、执行 D. 编译、链接、编辑、执行 答案: B 2、 要把高级语言编写的源程序转换为目标程序,需要使用 ( ) 。 A. 编辑程序 B. 驱动程 序 C. 调试程序 D. 编译程序 答案: D 3、下列关于 C+与 C 语言的关系描述中 ,错误的是 ( ) 。 A. C 语言是 C+语言的一
2、个子集 B. C+与 C 语言是兼容的 C. C+对 C 语言进行了一些改进 D. C+和 C 语言都是面向对象的 答案: D 4、下面为使用面向对象语言的正确理由是 ( ) 。 A. 面向对象程序由三种基本结构组成,分别是顺序结构、选择结构和循环结构 B. 程序语句比面向过程语言简单 C. 面向 对象程序设计可以设计为自行修改错误 D. 面向对象程序很容易概念化 答案: D 5、以下选项中,合法的用户标识符是 ( ) 。 A. long B. _2Test C. 3Dmax D. A.dat 答案: B 6、下列描述中正确的是 ( ) 。 A. 不是每个 C+程序都必须包含预处理命令 #in
3、clude B. C+程序必须有 return 语句 C. C+程序中的变量必须定义在主程序内部 D. C+程序中所使用的 符号常量可以不进行定义 答案: A 7、 C+源程序文件的扩展名为 ( ) 。 A. .CPP B. .C C. .DLL D. .EXE 答案: A 8、 cout 是 I0 流库预定义的 ( ) 。 A. 类 B. 对象 C. 包含文件 D. 常量 答案: B 9、 C+对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是 ( ) 。 A. 增加了一些新的运算符 B. 允许函数重载,并允许设置缺省参 数 C. 规定函数说明符必须用原型 D. 引进了类和对象
4、的概念 答案: D 10、下列选项中, ( ) 是不合法的标识符 . A. Program B. Obj23 C. double D. B_C_D 答案: C 11、下列标识符中,不合法的用户标识符为 ( ) 。 A. a! B. _int C. a_10 D. PAd 答案: A 12、只能向终端输出一个字符的函数是 ( ) 。 A. pringf 函数 B. putchar 函数 C. getchar 函数 D. scanf 函数 答案: B 13、如果有整型量 int x = 5,执行情况 x += 1.9 后 x 的值为 ( ) 。 A. 6 B. 7 C. 结果不确定 D. 表达式非
5、法 答案: A 14、已知 a=5,b=3,表达式 a+=a*=+b*3 的值为 ( ) 。 A. 40 B. 80 C. 100 D. 120 答案: D 20、在 C+语言中,自定义 的标识符 ( ) 。 A. 能使用关键字并且不区分大小写 B. 不能使用关键字并且不区分大小写 C. 能使用关键字并且区分大小写 D. 不能使用关键字并且区分大小写 答案: D 32、 C+语言程序的基本单位是 ( ) 。 A. 程序行 B. 语句 C. 函数 D. 字符 答案: B 38、下列符号属于 c+语言用户标识符的是( )。 A. DO B. if C. void D. switch 答案: A 3
6、9、任意一个类,析构函数的个数最多是 ( )。 A. 不限个数 B. 1 C. 2 D. 3 答案: B 【章节】 第 3 章 函数 【知识点】 1、 C+函数的相关知识 2、函数定义与函数的调用 3、内联函数与函数重载 【单选题】 1、若有以下函数调用语句 ,在此函数调用语句中实参的个数是 ( ) 。 fun(a+b,(y=10,y),fun(n,k,d); A. 3 B. 4 C. 5 D. 6 答案: A 2、以下程序的运行结果是 ( ) 。 func(int a,int b) static int m,i=2; i+=m+1; m=i+a+b; return(m); int main(
7、) int k=4,m=1,p; p=func(k,m); cout int f(int b,int n) int i,r=1; for(i=0;i void fun(int num)cout SetValue(50) D. ptr - n=50 答案: C 分值: 2 难度: 1 知识点: 评析: 2、类 MyClass 的定义如下 : class MyClass public: MyClass() value=0; setVariable(int i) value=i; private: int value; ; 则以下各项对如下语句序列的描述中 ,正确的是 ( ) 。 MyClass *
8、p , my; p = A. 语句” p = ”是把对象 my 赋值给指针变量 p B. 语句” MyClass *p , my;”会调用两次类 MyClass 的构造函数 C. 对语句” *p.SetVariable(5)”的调用是正确的 D. 语句” p - SetVariable(5)”与语句” my.SetVariable(5)”等价 答案: D 分值: 2 难度: 1 知识点: 评析: 3、 下面类的定义 ,有 ( )错误 。 class MyClass int i=0; public: void MyClass(); MyClass(int Value); A. 1 B. 2 C. 3 D. 4