第2章 C++概述课后
一. 单选题(共20题,74分)
1、下列关于C++语言的发展说法错误的是( )。
A. C++语言起源于C语言
B. C++语言最初被称为“带类的C”
C.在1980年C++被命名
D.在1983年C++被命名
我的答案: C
2. (单选题)C++语言是以( )语言为基础逐渐发展而演变而成的一种程序设计语言。
A. Pascal 语言
B. C 语言
C.Basic 语言
D. Simula67 语言
我的答案: B
3. (单选题)下列关于C++与C语言关系的描述中错误的是( )。
A. C++是C语言的超集
B. C++是C语言进行了扩充
C. C++和C语言都是面向对象的程序设计语言
D. C++包含C语言的全部语法特征
我的答案: C
4. (单选题)下列C++标点符号中表示行注释开始的是( )。
A.#
B.;
C. //
D. }
我的答案: C
5. (单选题)每个C++程序都必须有且仅有一个( )。
A.预处理命令
B.主函数
C.函数
D.语句
我的答案: B
6. (单选题)C++对C语言做了很多改进,下列描述中哪一项使得C语言发生了质变,即从面向过程变成面向对象( )。
A.增加了一些新的运算符
B.允许函数重载,并允许设置默认参数
C.规定函数说明必须用原型
D.引进类和对象的概念
我的答案: D
7. (单选题)对定义重载函数的下列要求中,错误的是( )。
A.要求参数的个数不同
B.要求参数中至少有一个类型不同
C.要求参数个数相同时,参数类型不同
D.要求函数的返回值不同
我的答案: D
8. (单选题)在函数的返回值类型与返回值表达式的类型的描述中,错误的是( )。
A.函数返回值的类型是在定义函数时确定,在函数调用时是不能改变的
B.函数返回值的类型就是返回值表达式的类型
C.函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成返回值类型
D. 函数返回值类型确定了返回值表达式的类型
我的答案: D
9. (单选题)下列不正确的选项是( )。
A.C++语言是一种既支持面向过程程序设计,又支持面向对象程序设计的混合型语言
B.关键字是在程序中起分割内容和界定范围作用的一类单词
C.iostream是一个标准的头文件,定义了一些输入输出流对象
D.对象与对象之间不可以进行通信和联络
我的答案: D
10. (单选题)下列表示引用的方法中,正确的是( )。
已知:int k=1000;
A.int &x=k;
B.char &y;
C. int &z=1000;
D. float &t=&k;
我的答案: A
11. (单选题)下列语句中错误的是( )
A. int *p = new int(10);
B. int *p = new int[10];
C. int *p = new int;
D. int *p = new int[40](10);
我的答案: D
12. (单选题)const char* const name="chen";
下面的语句中正确的是()
A. name[3]='a';
B. name="lin"
C. name=new char[5]
D. cout< 我的答案: D 13. (单选题)char* const name="chen"; 下面的语句中正确的是() A. name[3]='q'; B. name="line"; C. name=new char[5]; D. name = new char('q'); 我的答案: A 14. (单选题)假设已有定义“const char* name ="chen"; ”下面的语句中错误的是( ) A. name[3]='q'; B. name="lin"; C. name=new char[5]; D. name=new char('q'); 我的答案: A 15. (单选题)在( )情况下适合采用内联函数。 A. 函数代码小,频繁调用。 B. 函数代码多,频繁调用。 C. 函数体含有递归语句。 D. 函数体含有循环语句。 我的答案: A 16. (单选题)在C++中,关于下列设置默认参数值的描述中,( )是正确的。 A. 不允许设置默认参数值。 B. 在指定了默认参数右边,不能出现没有指定默认值的参数。 C. 只能在函数的定义性声明中指定参数的默认值。 D. 设置默认参数值时,必须全部都设置。 我的答案: B 17. (单选题)下面的类型声明中正确的是( ) A. int &a[4]; B. int & *p; C. int &&q; D. int i, *p=&i; 我的答案: D 18. (单选题)下面关于重载函数的说法中正确的是 ( ) A. 重载函数必须具有不同的返回值类型。 B. 重载函数形参个数必须不同。 C. 重载函数必须有不同的形参列表 D. 重载函数名可以不同 我的答案: C 19. (单选题)关于new运算符的下列描述中,( )是错误的。 A. 它可以用来动态创建对象和对象数组。 B. 它创建的对象和对象数组可以使用运算符 delete 删除。 C. 使用它创建对象时要调用构造函数。 D. 使用它创建对象数组时必须指定初始值。 我的答案: C 20. (单选题)关于delete运算符的下列描述中,( )是错误的。 A. 它必须用于new返回的指针。 B. 使用它删除对象时要调用析构函数。 C. 对一个指针可以使用多次该运算符。 D. 指针名前只有一对方括号符号,不管所删除数组的维数。 我的答案: C 二. 填空题(共1题,3.7分) 21. (填空题)C++既可以用来进行面向(填空1)程序设计,又可以进行面向(填空2)程序设计。 我的答案: (1) 过程 (2) 对象 三. 简答题(共6题,22.3分) 22. (简答题) 阅读下面的程序,直接写出程序运行结果。 #include using namespace std; int main() { int a,b,sum; // 定义a,b,sum三个整型变量 a=43; // 把整数常量赋给变量a b=37; sum=a+b; // a与b相加的和赋给变量sum cout<<"The sum is"< cout< return 0; } 我的答案: The sum is80 23. (简答题) 阅读下面的程序,直接写出程序运行结果。 #include using namespace std; int main() { int a; int &b=a; //变量引用 b=10; cout<<"a="<
return 0; } 我的答案: a=10 24. (简答题) 我的答案: a=639 , b=78 ,c=12 25. (简答题) 我的答案: n=11 n=12 26. (简答题) 我的答案: int i=17 int ir=17 27. (简答题) 我的答案: 5 所有习题完整版PDFhttps://download.csdn.net/download/lornaleo/75413292 欢迎分享,转载请注明来源:内存溢出
评论列表(0条)