华南理工网络教育C++随堂练习已提交.docx
- 文档编号:17101351
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:50
- 大小:2.43MB
华南理工网络教育C++随堂练习已提交.docx
《华南理工网络教育C++随堂练习已提交.docx》由会员分享,可在线阅读,更多相关《华南理工网络教育C++随堂练习已提交.docx(50页珍藏版)》请在冰点文库上搜索。
华南理工网络教育C++随堂练习已提交
第一章
第二章
第三章
3.1
1. 以下正确的函数原型为( )。
(A)fun1(intx;inty); (B)voidfun1(x,y);
(C)voidfun1(intx,y); (D)voidfun1(int,int);
答题:
A. B. C. D. (已提交)
参考答案:
D
问题解析:
2. 有函数原型intf2(int,int);以下正确的调用语句是( )。
(A)inta=fun2
(1); (B)cout< (C)inta=fun2 (1)+fun (2); (D)cout< 答题: A. B. C. D. (已提交) 参考答案: B 问题解析: 3. 有函数原型voidf3(double);以下正确的调用语句是( )。 (A)doublea=fun3(0.15); (B)fun3(0.34); (C)doublea=fun3(0.1)+f3(0.2); (D)cout< 答题: A. B. C. D. (已提交) 参考答案: B 问题解析: 4. 以下正确的函数定义是( )。 (A)intfun4(inta,intb){returna+b;} (B)voidfun4(inta,intb){returna+b;} (C)intfun4(inta,intb){fun4=a+b;} (D)voidfun4(inta,intb){fun4=a+b;} 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 5. 以下正确的函数定义是( )。 (A)voidfun5();{cout<<"Callf5\n";} (B)voidfun5(){returnf5;} (C)voidfun5(){cout<<"Callf5\n";} (D)voidfun5(){return5;} 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 3.2 1. 有函数原型voidfun6(int);,在下列选项中,不正确的调用是( )。 (A)inta=21; fun6(a); (A)inta=15; fun6(a3); (C)intb=100;fun6(&b); (D)fun6(256); 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 2. 有函数原型voidfun7(int? );,在下列选项中,正确的调用是( )。 (A)doublex=2.17;fun7(&x); (B)inta=15; fun7(a? 3.14); (C)intb=100; fun7(&b); (D)fun7(256); 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 3. 有函数原型voidfun8(int&);,在下列选项中,正确的调用是( )。 (A)inta=2.17;fun8(&a); (B)inta=15; fun8(a? 3.14); (C)intb=100; fun8(b); (D)fun8(256); 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 4. 有声明 voidfun9(int&); inta,intp=&a; 在下列选项中,正确的调用是( )。 (A)fun9(&a); (B)fun9(p); (C)fun9(a); (d)fun9(p); 答题: A. B. C. D. (已提交) 参考答案: B 问题解析: 5. 5以下正确的函数定义是( )。 (A)int*fun10(doublex){returnx;} (B)int*fun10(doublex){return&x;} (C)int*fun10(inta){return*a;} (D)int*fun10(inta){return&a;} 答题: A. B. C. D. (已提交) 参考答案: D 问题解析: 6. 函数参数的默认值不允许为( )。 (A)全局常量 (B)直接常量 (C)局部变量 (D)函数调用 答题: A. B. C. D. (已提交) 参考答案: C 3.3 1. 在C++中,一个项目可以包含多个函数,它们之间是( )。 (A)独立定义的 (B)嵌套定义的 (C)根据调用关系定义的 (D)根据调用顺序定义的 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 2. 一个项目中只能有一个的函数是( )。 (A)系统库函数 (B)自定义函数 (C)主函数 (D)在其他文件中定义的函数 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 3. 一个项目中包含3个函数: main、fa和fb函数,它们之间不正确的调用是( )。 (A)在main函数中调用fb函数 (B)在fa函数中调用fb函数 (C)在fa函数中调用fa函数 (D)在fb函数中调用main函数 答题: A. B. C. D. (已提交) 参考答案: D 问题解析: 4. 实现函数调用需要( )进行信息管理。 (A)队列 (B)堆栈 (C)数组 (D)参数 答题: A. B. C. D. (已提交) 参考答案: B 问题解析: 5. 关于递归调用不正确的描述是( )。 (A)递归调用和嵌套调用都是通过堆栈管理实现的 (B)函数直接或间接调用自己称为递归调用 (C)递归终止条件必须为参数值等于0 (D)递归算法的问题规模必须是逐步缩小的 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 3.4 1. 有以下函数定义,该函数的类型是( )。 doublefun11(intary[],intlen) {/*……*/} (A)doublefun11(intary[],intlen) (B)doublefun11(int[],int) (C)double(int[],int) (D)double 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 2. 有说明语句: typedefdoublefunt(double); funtfun12; 以下叙述正确的是( )。 (A)funt和fun12是类型相同的函数 (B)fun12是funt类型的变量 (C)funt是返回typedefdouble类型的函数(D)fun12是funt类型的函数 答题: A. B. C. D. (已提交) 参考答案: D 问题解析: 3. 有语句 typedefdoublefunt(double); funtfun13,*pfun; 则以下正确的赋值语句是( )。 (A)pfun=fun13; (B)*pfun=fun13; (C)pfun=funt; (D)*pfun=funt; 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 4. 有语句 typedefdoublefunt(double); funtfun13,fun14,*pfun; 则以下不正确的赋值语句是( )。 (A)pfun=fun13; (B)pfun=&fun14; (C)pfun=*fun13; (D)fun13=fun14; 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 5. 有声明 intfun14(int); int(pf)(int)=fun14; 在下列选项中,正确的调用是( )。 (A)inta=15; intn=fun14(&a); (B)inta=15;cout<<(&pf)(a); (C)cout<<(pf)(256); (D)cout< 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 3.5 1. 指定内联函数的关键字是( )。 (A)include (B)inline (C)namespace (D)typedef 答题: A. B. C. D. (已提交) 参考答案: B 问题解析: 2. 内联函数的正确定义是( )。 (A)inlineintsmall(); intsmall(){/*……*/} (B)intsmall(); inlineintsmall(){/*……*/} (C)intinlinesmall(); intsmall(){/*……*/} (D)intsmall(); intinlinesmall(){/*……*/} 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 3. 使用重载函数编程序的目的是( )。 (A)使用相同的函数名调用功能相似的函数 (B)共享程序代码 (C)提高程序的运行速度 (D)节省存储空间 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 4. 重载函数要求( )。 (A)函数名不同,函数参数个数相同 (B)函数名不同,函数参数类型相同 (C)函数名相同,函数类型各不相同 (D)函数名相同,函数类型也相同 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 5. 以下正确的重载函数是( )。 (A)intsame(int,double); doublesame(int,double); (B)intsame1(int,double); intsame2(int,double); (C)intsame(int=0); intsame(int); (D)intsame(int,double); intsame(int,double,double); 答题: A. B. C. D. (已提交) 参考答案: D 3.6 1. 自动存储变量是指( )。 (A)自动指定存储地址的变量 (B)自动更新数据的变量 (C)在程序块执行时生成,块结束时释放的变量 (D)在项目执行时生成,项目结束时释放的变量 答题: A. B. C. D. (已提交) 参考答案: C 问题解析: 2. 在函数中声明的静态变量( )。 (A)在函数体中可见,函数结束调用时释放。 (C)在项目中可见,函数结束调用时释放。 (B)在函数体中可见,项目结束调用时释放。 (D)在项目中可见,项目结束调用时释放。 答题: A. B. C. D. (已提交) 参考答案: B 问题解析: 3. 语句标号的作用域是( )。 (A)函数 (B)文件 (C)程序块 (D)项目 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 4. 全局变量指的是( )的变量。 (A)在项目所有文件可访问 (B)当前文件的所有代码可访问 (C)任何自动初始化为0 (D)具有文件作用域 答题: A. B. C. D. (已提交) 参考答案: D 问题解析: 5. 当局部变量与全局变量同名时,若要在局部块内访问全局变量,使用( )运算符。 (A): : (B): (C). (D)-> 答题: A. B. C. D. (已提交) 参考答案: A 问题解析: 第四章 第五章 5.1 5.2 5.3 5.4 5.5 第六章 6.1 6.2 6.3 6.4 第七章 第七章运算符重载>7.1运算符重载规则 1.在下列运算符中,不能重载的是()。 (A)! (B)sizeof(C)new(D)delete 答题: A.B.C.D.(已提交) 参考答案: B 问题解析: 2.在下列关于运算符重载的描述中,()是正确的。 (A)可以改变参与运算的操作数个数(B)可以改变运算符原来的优先级 (C)可以改变运算符原来的结合性(D)不能改变原运算符的语义 答题: A.B.C.D.(已提交) 参考答案: D 问题解析: 3.运算符函数是一种特殊的()或友元函数。 (A)构造函数(B)析构函数(C)成员函数(D)重载函数 答题: A.B.C.D.(已提交) 参考答案: C 问题解析: 4.设op表示要重载的运算符,那么重载运算符的函数名是: ()。 (A)operatorop(B)op(C)函数标识符(D)函数标识符op 答题: A.B.C.D.(已提交) 参考答案: A 问题解析: 5.用于类运算的运算符通常都要重载。 但有两个运算符系统提供默认重载版本,它们是()。 (A)->和.(B)++和--(C)=和&(D)new和delete 答题: A.B.C.D.(已提交) 参考答案: C 问题解析: 第七章运算符重载>7.2用成员或友元函数重载运算符 1.在下列函数中,不能重载运算符的函数是()。 (A)成员函数(B)构造函数(C)普通函数(D)友元函数 答题: A.B.C.D.(已提交) 参考答案: B 问题解析: 2.在下列运算符中,要求用成员函数重载的运算符是()。 (A)=(B)==(C)<=(D)++ 答题: A.B.C.D.(已提交) 参考答案: A 问题解析: 3.在下列运算符中,要求用友元函数重载的运算符是()。 (A)=(B)[](C)<<(D)() 答题: A.B.C.D.(已提交) 参考答案: C 问题解析: 4.如果希望运算符的操作数(尤其是第一个操作数)有隐式转换,则重载运算符时必须用()。 (A)构造函数(B)析构函数(C)成员函数(D)友元函数 答题: A.B.C.D.(已提交) 参考答案: D 问题解析: 5.当一元运算符的操作数,或者二元运算符的左操作数是该类的一个对象时,重载运算符函数一般定义为()。 (A)构造函数(B)析构函数(C)成员函数(D)友元函数 答题: A.B.C.D.(已提交) 参考答案: C 问题解析: 第七章运算符重载>7.3几个典型运算符的重载 1.设有类A的对象Aobject,若用成员函数重载前置自增表达式,那么++Aobject被编译器解释为()。 (A)Aobject.operator++()(B)operator++(Aobject) (C)++(Aobject)(D)Aobject: : operator++() 参考答案: A 2.运算符++,=,+和[]中,只能用成员函数重载的运算符是()。 (A)+和=(B)[]和后置++ (C)=和[](D)前置++和[] 参考答案: C 3.在C++中,如果在类中重载了函数调用运算符(),那么重载函数调用的一般形式为: ()。 (A)(表达式)对象(B)(表达式表)对象 (C)对象(表达式)(D)对象(表达式表) 参考答案: D 4.设有类A的对象Aobject,若用友员函数重载后置自减表达式,那么Aobject--被编译器解释为()。 (A)Aobject.operator--()(B)operator--(Aobject,0) (C)--(Aobject,0)(D)--(Aobject,0) 参考答案: B 5.如果表达式++j*k中的“++”和“*”都是重载的友元运算符,则采用运算符函数调用格式,该表达式还可以表示为()。 (A)operator*(j.operator++(),k)(B)operator*(operator++(j),k) (C)operator++(j).operator*(k)(D)operator*(operator++(j),) 参考答案: B 6.如果类A要重载插入运算符“<<”,那么重载函数参数表的形式一般定义为()。 (A)(constA&)(B)(ostream&) (C)(constA&,ostream&)(D)(ostream&,constA&) 参考答案: D 第七章运算符重载>7.4类类型转换 1.类型转换函数只能定义为一个类的()。 (A)构造函数(B)析构函数(C)成员函数(D)友员函数 答题: A.B.C.D.(已提交) 参考答案: C 2.具有一个非默认参数的构造函数一般用于实现从()的转换。 (A)该类类型到参数类型(B)参数类型到该类类型 (C)参数类型到基本类型(D)类类型到基本类型 答题: A.B.C.D.(已提交) 参考答案: B 3.假设ClassX是类类型标识符,Type为类型标识符,可以是基本类型或类类型,Type_Value为Type类型的表达式,那么,类型转换函数的形式为()。 (A)ClassX: : operatorType(Typet){…returnType_Value;} (B)friendClassX: : operatorType(){…returnType_Value;} (C)TypeClassX: : operatorType(){…returnType_Value;} (D)ClassX: : operatorType(){…returnType_Value;} 答题: A.B.C.D.(已提交) 参考答案: D 4.在下列关于类型转换的描述中,错误的是()。 (A)任何形式的构造函数都可以实现数据类型转换。 (B)带非默认参数的构造函数可以把基本类型数据转换成类类型对象。 (C)类型转换函数可以把类类型对象转换为其他指定类型对象。 (D)类型转换函数只能定义为一个类的成员函数,不能定义为类的友元函数。 答题: A.B.C.D.(已提交) 参考答案: A 5.C++中利用构造函数进行类类型转换时的构造函数形式为()。 (A)类名: : 类名(arg);(B)类名: : 类名(arg,arg1=E1,…,agrn=En); (C)~类名(arg);(D)~类名(arg,arg1=E1,…,agrn=En); 答题: A.B.C.D.(已提交) 参考答案: B 第八章 第九章 9.2 9.3 9.4 第十章 10.2 10.3 第十一章 11.2 10.3 11.4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 华南理工 网络 教育 C+ 练习 提交
![提示](https://static.bingdoc.com/images/bang_tan.gif)