华南理工网络教育C++随堂练习已提交.docx
- 文档编号:12287311
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:88
- 大小:1.94MB
华南理工网络教育C++随堂练习已提交.docx
《华南理工网络教育C++随堂练习已提交.docx》由会员分享,可在线阅读,更多相关《华南理工网络教育C++随堂练习已提交.docx(88页珍藏版)》请在冰点文库上搜索。
华南理工网络教育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(a 3); (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,int p=&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<< pf(256); 答题: 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+ 练习 提交