1、C程序设计练习答案高等教育自学考试C+程序设计练习一、单项选择题1对C+语言和C语言的兼容性,描述正确的是( )AC+兼容C BC+部分兼容CCC+不兼容C DC兼容C+2C+中注释“/*”的有效范围是( )A从“/*”开始到行尾 B从“/*”开始后不终止C从“/*”开始到“/”为止 D从“/*”开始到“*/”为止3.对C+中主函数描述正确的是( )A.名称为main,可为多个 B.名称不限,可为多个C.名称为main,必须有且只能有一个 D.名称不限,必须有且只能有一个4.调用声明为int result(int a,int b)的函数时,正确的方法是( )A.result(1,2) B.re
2、sult(1)C.result(0.1,0.3) D.result(1,2,3)5在C+中使用流进行输入输出,其中用于屏幕输出的对象是( )Acerr BcinCcout Dcfile6如想使用std命名空间,正确的程序语句是()Ausing std; Bnamespace std,Cusing namespace; Dusing namespace std;7.无类型标识符是指( )8.下列选项不是C+关键字的是( )A.typedef B.void C.bool 9在编译指令中,宏定义使用哪个指令( )A#include B#defineC#if D#else10对使用关键字new所开辟的
3、动态存储空间,释放时必须使用( )Afree BcreateCdelete Drealse11.用于包含C+标准库iostream的预处理指令是( )A.#define B.#includeC.#define iostream D.#includeiostream12用于标识长整型常量的前缀或后缀是()A无前后缀 B后缀L或lC前缀零 D前缀0x13.从本质上看,引用是被引用变量的( )A.拷贝 14.用于标识十进制常量的前缀或后缀是( )A.无前后缀 B.后缀L或l C.前缀0 D.前缀0x15使用下列哪个流格式控制符可以设置转换基数为十六进制()Adec BoctChex D. endl1
4、6.使用下列哪个流格式控制符可设置转换基数为八进制( )A.dec B.oct C.hex D.endl17.设int x=56;int r=x;若cout &x;显示0012FF7A,则cout &r;输出值为( )A.56 B.00l2FF7A C.0012FF7B 18对于new类型名size描述正确的是()A申请可以存储size个字节的空间B申请可以存储1个该数据类型的空间C申请可以存储size个该数据类型对象的空间D申请可以存储1个字节的空间19使用new创建的对象,对其生命周期描述正确的是()A由系统决定 B由用户控制 C全局生命周期 D永久存在20使用值传递方式将实参传给形参,下
5、列说法正确的是( )A形参是实参的备份 B实参是形参的备份C形参和实参是同一对象 D形参和实参无联系21设函数void swap(int a,int b)将交换两形参数值,如有两整型变量int a=10;int b=15,则执行swap(a,b);之后,a,b值分别为()A15,10 B15,15C10,15 D10,1022设函数void subone (int)将形参值减1,如有整形变量int b=10;则执行subone(b)后,b的值为()A9 B10C11 D未知23C+中函数返回值类型不可以是()A引用 B指针C结构 D数组24声明函数int Func(int a=0,int b=
6、3,int c=4)相当于声明了几个函数形式()A1 B2C3 D425.对函数int max(int a,int b=0,int c=0,int d=0,int e=0);下列调用方式正确的是( )A.int m=max(10,11,12,13,14); B.int m=max(10,12,13,14);C.int m=max(10,1l,13,14); D.int m=max(10,11,12,14);26在函数调用时,如某一默认参数要指明一个特定值,则有( )A其之前所有参数都必须赋值 B其之后所有参数都必须赋值C其前、后所有参数都必须赋值 D其前、后所有参数都不必赋值27.下面关于数组
7、的初始化正确的是( )A.char str =a,b,c; B.char str2=a,b,c;C.char str12=a,b,e,d; D.char str =a,b,c;28设存在函数int max(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式不正确的是( )Aint m = max(22,max(59,70); Bint m = max(max(22,59),70);Cint m = max(22,59,70); Dint m = max(59,max(22,70);29.声明函数为内联函数时所使用的关键字为( )A.const 30.包含哪种语句的
8、函数不能声明为内联函数( )A.变量定义 B.ifelseC.位操作 31下列哪个类型函数不适合声明为内联函数( )A函数体语句较多 B函数体语句较少C函数执行时间较短 D函数执行时间过长32int Func(int,int);不可与下列哪个函数构成重载( )Aint Func(int,int,int); Bdouble Func(int,int);Cdouble Func(double,double); Ddouble Func(int,double);33.决定C+语言中函数的返回值类型的是( )34.函数int & min(int &,int &)返回参数中较小者,设有两整型变量int
9、a=10;int b=15;在执行语句min(a,b)-;之后,a,b值分别为( )A.9,14 B.9,150,14 D.10,1540.函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明( )A.double sum(int); B.char sum(int,int);C.int sum(double); D.int sum(int,int,int);41.函数模板template void Func(T,T)可具有下列哪种实例化形式( )A.void Func(float,int) B.void Func(char,char)C.void Fun
10、c(int,double) D.void Func(bool,float)42.声明函数模板的关键字是( )A.inline B.template C.const D.short43C+中专门定义一个仅在模板中使用的参数类型的关键字是()Aconst BinlineCshort Dtypename/class44对类中声明的变量,下列描述中正确的是( )A属于全局变量B只属于该类C属于该类,某些情况下也可被该类不同实例所共享D任何情况下都可被该类所有实例共享45基类private成员,通过public派生,其在派生类中为( )Aprivate Bprotected Cpublic D不可访问4
11、6如没有使用private关键字定义类的数据成员,则默认为( )Aprivate BpublicCprotected Dfriend47类的私有成员可在何处访问( )A通过子类的对象访问 B本类及子类的成员函数中C通过该类对象访问 D本类的成员函数中48如果没有为一个类定义任何构造函数的情况下,下列描述正确的是( )A编译器总是自动创建一个不带参数的构造函数B这个类没有构造函数C这个类不需要构造函数D该类不能通过编译49构造函数用于( )A定义对象 B初始化对象 C清除对象 D普通计算50析构函数被调用的时间点是()A对象被创建时 B对象被销毁时C不会被调用 D主函数被调用时51一个类可包含析
12、构函数的个数是( )A0个 B1个C至少一个 D0个或多个52this指针存在的目的是( )A保证基类公有成员在子类中可以被访问B保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码C保证基类保护成员在子类中可以被访问D保证基类私有成员在子类中可以被访问53下列关于类的权限的描述错误的是( )A类本身的成员函数只能访问自身的私有成员B类的对象只能访问该类的公有成员C普通函数不能直接访问类的公有成员,必须通过对象访问D一个类可以将另一个类的对象作为成员54设类A将其它类对象作为成员,则建立A类对象时,下列描述正确的是( )AA类构造函数先执行 B成员构造函数先执行C两者并行执行 D不能确
13、定55对象的构造函数调用顺序取决于()A对象成员在初始化列表中给出的顺序B对象成员在类中声明的顺序C对象成员与在初始化列表中顺序和类中声明顺序均有关D随机顺序56下列描述错误的是( )A在创建对象前,静态成员不存在 B静态成员是类的成员C静态成员不能是虚函数 D静态成员函数不能直接访问非静态成员57.下列访问公有静态成员的方式,错误的是( )C.对象指针-静态成员名 58下列对静态成员函数描述正确的是()A静态成员函数中可使用1个this指针B静态成员函数中不能使用this指针C静态成员函数中可使用多个this指针D静态成员函数中只可使用1个that指针59友元的声明可出现在( )A类的私有部
14、分 B类的公有部分C类的保护部分 D类的任何部分60在下列派生中,子类和父类间是isa关系的是()Aprivate BprotectedCpublic Dpublish61面向对象不仅进行功能抽象,还要进行()A动态抽象 B消息抽象C数据抽象 D算法抽象62.下列访问成员的方式哪个是正确的( ).对象成员名C.对象名对象成员名 D.类名对象成员名63.对类A,复制构造函数的原型是( )A.A:A(const A&); B.A:A(const A *);C.A:A(const A); D.A:A( );64.假定MyClass为一个类,则该类的复制构造函数的声明语句为( )A.MyClass&(MyClass x); B.MyClass(MyClass x);C.MyClas
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1