福师13春《C++语言程序设计》在线作业一二答案
福师13春《C++语言程序设计》在线作业一试卷总分:100 测试时间:--
一、单选题(共30道试题,共60分。)
1.如果a=1,b=2,c=3,d=4,则条件表达式“a>ba:c<dc:d ” 的值为( )
A. 2
B. 3
C. 1
D. 4
满分:2分
2.下面程序的结果是什么?Int i=3,j=4;i?i++:j++;printf(“%d %d\n”,i,j);( )
A. 3 3
B. 4 4
C. 3 4
D. 4 3
满分:2分
3.下列函数中,可以为虚函数的是( )
A. 自定义的构造函数
B. 拷贝构造函数
C. 静态成员函数
D. 析构函数
满分:2分
4.以下各选项企图说明一种新的类型名,其中正确的是( )
A. typedef v1 int;
B. typedef v2=int;
C. typedef int v3;
D. typedef v4: int;
满分:2分
5.如要求在if后一对括号中的表达式,表示a不等于0的时候的值为"真",则能正确表示这一关系的表达式为( )
A. a<>0
B. !a
C. a=0
D. a
满分:2分
6.能做为C++程序基本单位的是( )
A. 字符;
B. 语句;
C. 函数;
D. 源文件;
满分:2分
7.如果变量x,y已经正确定义,下列语句哪一项不能正确将x,y的值进行交换( )
A. x=x+y,y=x-y,x=x-y
B. t=x,x=y,y=t
C. t=y,y=x,x=t
D. x=t,t=y,y=x
满分:2分
8.能正确表示x>=3或者x<1的关系表达式是( )
A. x>=3 or x<1
B. x>=3|x<1
C. x>=3||x<1
D. x> =3&&x<1
满分:2分
9.下面列出的保留字中,不能作为函数的返回类型的是( )
A. void
B. int
C. new
D. long
满分:2分
10.在下列运算符中,优先级最低的是( )
A. ||
B. !=
C. <
D. +
满分:2分
11.以下哪个不是循环语句( )
A. while语句
B. do-while语句
C. for语句
D. if-else语句
满分:2分
12.已知:print( )函数是一个类的常成员函数,且无返回值。在下列表示中,正确的是( )
A. void print( ) const;
B. const void print( );
C. void print( );
D. void print(const);
满分:2分
13.以下函数的返回结果是( )int function(char *x) { char *p=x; while(*p++); return(p-x-1); }
A. 求字符串的长度
B. 将字符串x连接到字符串p后面
C. 将字符串x复制到字符串p中
D. 将字符串x反向存放
满分:2分
14.下列对基类和派生类关系的描述中,错误的是( )
A. 派生类是基类的具体化
B. 派生类是基类的子集
C. 派生类是基类定义的延续
D. 派生类是基类的组合
满分:2分
15.若x,y,z均被定义为整数,则下列表达式终能正确表达代数式1/(x*y*z)的是( )
A. 1/x*y*z
B. 1.0/(x*y*z)
C. 1/(x*y*z)
D. 1/x/y/(float)z
满分:2分
16.函数重载体现了面向对象的( )
A. 封装性
B. 多态性
C. 继承性
D. 抽象性
满分:2分
17.下列哪项不是面向对象程序设计的主要特征( )
A. 封装
B. 继承
C. 多态
D. 结构
满分:2分
18.循环体至少被执行一次的语句为( )
A. for循环
B. while循环
C. do循环
D. 任一种循环
满分:2分
19.析构函数在什么时间开始调用。( )
A. 类创建
B. 创建对象
C. 引用对象
D. 释放对象
满分:2分
20.已知字符'b'的ASCII码为98,语句printf("%d,%c",'b','b'+1 );的输出为( )
A. 98,b
B. 语句不合法
C. 98,99
D. 98,c
满分:2分
21.下列运算符中,( )运算符在C++中不能重载
A. &&B. []
C. ::D. new
满分:2分
22.下面不能正确表示a*b/(c*d)的表达式是( )
A. (a*b)/c*d
B. a*b/(c*d)
C. a/c/d*b
D. a*b/c/d
满分:2分
23.设B类是由A类继承的。当创建一个B类的对象时,构造函数的调用顺序是( )
A. 先调用A类的构造函数,然后调用B类的构造函数
B. 先调用B类的构造函数,然后调用A类的构造函数
C. 不调用A类的构造函数
D. 视定义时A类和B类出现的位置
满分:2分
24.在下边的二维数组定义中,正确的是( )
A. int a[]
B. int a[]
C. int a[]={{1,3,5},2}
D. int a[](10)
满分:2分
25.下列关于构造函数说法不正确的是( )
A. 构造函数必须与类同名
B. 在构造函数中可以对类中的成员进行初始化
C. 构造函数可以省略不写D. 构造函数必须有返回值
满分:2分
26.已知函数test定义为:void test() { ………… } 则函数定义中void的含义是( )
A. 执行函数test后,函数没有返回值B. 执行函数test后,函数不再返回
C. 执行函数test后,函数返回任意类型值
D. 以上三个答案都是错误的
满分:2分
27.下列对引用的陈述中,不正确的是( )
A. 每一个引用都是其所引用对象的别名,因此必须初始化
B. 形式上针对引用的操作实际上作用于它所引用的对象
C. 一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行
D. 不需要单独为引用分配存储空间
满分:2分
28.当说明一个结构变量时,系统分配给它的内存是( )
A. 各成员所需内存量的总和B. 结构中第一个成员所需内存量
C. 成员中占内存量最大的成员所需的容量
D. 结构中最后一个成员所需内存量
满分:2分
29.下面关于类的对象性质的描述,正确的是( )
A. 对象之间不可以相互赋值
B. 不可以说明指向对象的指针
C. 对象不能用作数组元素
D. 一个对象能用作另一个对象的成员
满分:2分
30.下面关于new 和delete操作符的说法中,不正确的是( )
A. 使用new操作符,可以动态分配全局堆中的内存资源
B. 若p的类型已由A*强制转换为void *,那么执行语句delete p;时,类A的析构函数不会被调用
C. 实现全局函数时,new和delete通常成对地出现在由一对匹配的花括号限定的语句块中
D. 执行语句A * p=new A时,类A的构造函数只会被调用1次
满分:2分
二、判断题(共20道试题,共40分。)
1.字符型变量用来存放字符常量,可以存放多个字符。( )
A. 错误
B. 正确
满分:2分
2.私有成员只能被本类的成员函数访问,来自类外部的任何访问都是非法的。( )
A. 错误
B. 正确
满分:2分
3.在一个函数中,不允许定义与结构体类型的成员相同名的变量。( )
A. 错误
B. 正确
满分:2分
4.静态就是让变量和函数在生命的区域内成为私有。( )
A. 错误
B. 正确
满分:2分
5.switch后面括号中的表达式只能是整型、字符型或枚举型表达式。( )
A. 错误
B. 正确
满分:2分
6.引用的目的主要用于在函数参数传递中,解决大对象的传递效率和空间都不如意的问题。( )
A. 错误
B. 正确
满分:2分
7.在一个函数内的复合语句中定义的变量在本函数范围内有效。( )
A. 错误
B. 正确
满分:2分
8.在使用C语言库函数时,要用预编译命令“#include”将有关的头文件包括到用户源文件中。( )
A. 错误
B. 正确
满分:2分
9.指向同一数组的两指针p1、p2相减的结果与所指元素的下标相减的结果是相同的。( )
A. 错误
B. 正确
满分:2分
10.字符型数据在内存中的存储形式是ASCII码( )
A. 错误
B. 正确
满分:2分
11.自增运算符和自减运算符只能用于变量,不能用于常量或表达式 。( )
A. 错误
B. 正确
满分:2分
12.用一个标识符代表一个常量的称为符号常量,符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。( )
A. 错误
B. 正确
满分:2分
13.C++语言程序中,main()函数必须放在程序开始的部分( )
A. 错误
B. 正确
满分:2分
14.C++中,一个函数必须在函数声明后才能使用( )
A. 错误
B. 正确
满分:2分
15.C++语言程序必须要有return语句( )
A. 错误
B. 正确
满分:2分
16.一个类的成员函数可以任意被调用( )
A. 错误B. 正确
满分:2分
17.C++语言程序中,要调用的函数必须在main()函数中定义( )
A. 错误B. 正确
满分:2分
18.声明一个结构并不分配内存,内存分配发生在定义这个新数据类型的变量中。( )
A. 错误B. 正确
满分:2分
19.空类型指针不能进行指针运算,也不能进行间接引用。( )
A. 错误B. 正确
满分:2分
20.C++程序的开发步骤通常要经过编辑、编译、连接、运行调试这样几个步骤。( )
A. 错误B. 正确
福师13春《C++语言程序设计》在线作业二
试卷总分:100 测试时间:--
一、单选题(共20道试题,共40分。)
1.下列叙述错误的是()。
A. 一个函数中可以有多条return语句
B. 调用函数必须在一条独立的语句中完成
C. 函数中通过return语句传递函数值
D. 主函数main也可以带有形参
满分:2分
2.函数定义为Fun(int&k),变量定义n=100,则下面调用正确的是()。
A. Fun(20)
B. Fun(20+n)
C. Fun(n)
D. Fun(&n)
满分:2分
3.如要求在if后一对括号中的表达式,表示a不等于0的时候的值为"真",则能正确表示这一关系的表达式为( )
A. a<>0
B. !a
C. a=0
D. a
满分:2分
4.能做为C++程序基本单位的是( )
A. 字符;
B. 语句;
C. 函数;
D. 源文件;
满分:2分
5.下列do-while循环的循环次数是( ): 已知:int i=5 do{ cout<<i--<<endl i-- }while (i!=0)
A. 0
B. 2
C. 5
D. 无限次
满分:2分
6.文件包含中被包含的文件的扩展名( )
A. 必须为 .h
B. 不能用 .h
C. 必须是 .c
D. 不一定是 .h
满分:2分
7.函数重载体现了面向对象的( )
A. 封装性
B. 多态性
C. 继承性
D. 抽象性
满分:2分
8.下面的哪个保留字不能作为函数的返回类型?
A. void
B. int
C. new
D. long
满分:2分
9.设int f(int);和int g(int);是函数f和g的原形,以下将f作为语句调用的是( )。
A. g(f(3));
B. f(g(3));
C. g(f(3)+2);
D. p= f(g(3)+1);
满分:2分
10.一个类的友元函数能够访问该类的()。
A. 私有成员
B. 保护成员
C. 公有成员
D. 所有成员
满分:2分
11.设有定义intx;floatv;,则10+x+v值的数据类型是()。
A. int
B. double
C. float
D. 不确定
满分:2分
12.下列描述中哪个是正确的()。
A. 私有派生的子类无法访问父类的成员
B. 类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的
C. 私有派生类不能作为基类派生子类
D. 私有派生类的所有子孙类将无法继续继承该类的成员
满分:2分
13.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是_________。
A. 派生类的对象可以赋给基类的对象
B. 派生类的对象可以初始化基类的引用
C. 派生类的对象可以直接访问基类中的成员
D. 派生类的对象的地址可以赋给指向基类的指针
满分:2分
14.如果变量x,y已经正确定义,下列语句哪一项不能正确将x,y的值进行交换
A. x=x+y,y=x-y,x=x-y
B. t=x,x=y,y=t
C. t=y,y=x,x=t
D. x=t,t=y,y=x
满分:2分
15.以下结构类型可用来构造链表的是( )。
A. struct aa{ int a;int * b;};
B. struct bb{ int a;bb * b;};
C. struct cc{ int * a;cc b;};
D. struct dd{ int * a;aa b;};
满分:2分
16.4、下列函数参数默认值定义错误的是()。(假定函数f()已经定义)
A. Fun(intx,inty=0)
B. Fun(intx=100)
C. Fun(intx=0,inty)
D. Fun(intx=f())
满分:2分
17.在函数定义前加上关键字”inline”,表示该函数被定义为()。
A. 重载函数
B. 内联函数
C. 成员函数
D. 普通函数
满分:2分
18.已知:print( )函数是一个类的常成员函数,且无返回值。在下列表示中,正确的是( )
A. void print( ) const;
B. const void print( );
C. void print( );
D. void print(const);
满分:2分
19.类B是通过public继承方式从类A派生而来的,且类A和类B都有完整的实现代码,那么下列说法正确的是_______。
A. 类B中具有pubic可访问性的成员函数个数一定不少于类A中public成员函数的个数。
B. 一个类B的实例对象占用的内存空间一定不少于一个类A的实例对象占用的内存空间。
C. 只要类B中的构造函数都是public的,在main函数中就可以创建类B的实例对象。
D. 类A和类B中的同名虚函数的返回值类型必须完全一致。
满分:2分
20.下列字符中不能构成标识符的是( )
A. 数字字符
B. 大写字母
C. 下划线字符
D. 连接符
满分:2分
二、判断题(共20道试题,共40分。)
1.内联函数是为了提高编程效率而实现的,它克服了用#define宏定义所带来的弊病 。( )
A. 错误
B. 正确
满分:2分
2.声明一个结构并不分配内存,内存分配发生在定义这个新数据类型的变量中。( )
A. 错误
B. 正确
满分:2分
3.如果派生类的成员函数的原型与基类中被定义为虚函数的成员函数原型相同,那么,这个函数自动继承基类中虚函数的特性。
A. 错误
B. 正确
满分:2分
4.继承的方式有公有继承、私有继承两种。
A. 错误
B. 正确
满分:2分
5.在使用C语言库函数时,要用预编译命令“#include”将有关的头文件包括到用户源文件中。( )
A. 错误
B. 正确
满分:2分
6.在一个函数中,不允许定义与结构体类型的成员相同名的变量。( )
A. 错误
B. 正确
满分:2分
7.每个cpp文件是单独编译的,但一个程序中多个cpp文件的编译顺序是不固定的。
A. 错误
B. 正确
满分:2分
8.设置函数的参数默认值的顺序是自左向右。
A. 错误
B. 正确
满分:2分
9.C++中函数声明就是函数原型。( )
A. 错误
B. 正确
满分:2分
10.执行if (x>=0||x<=0) cout<<"abcd";else cout<<"wxyz";屏幕上显示的是dcab。
A. 错误
B. 正确
满分:2分
11.空类型指针不能进行指针运算,也不能进行间接引用。( )
A. 错误
B. 正确
满分:2分
12.一个类的对象只有一个。
A. 错误
B. 正确
满分:2分
13.C++目标程序经连接后生成扩展名为exe的可执行程序文件。
A. 错误
B. 正确
满分:2分
14.C语言程序总是从主函数开始执行,在主函数结束。( )
A. 错误
B. 正确
满分:2分
15.float和double类型的大小分别为4和8。
A. 错误
B. 正确
满分:2分
16.表达式8&3的结果是1。
A. 错误
B. 正确
满分:2分
17.C++语句constchar*constp="hello",,所定义的指针p和它所指的内容都不能被改变。
A. 错误
B. 正确
满分:2分
18.私有成员只能被本类的成员函数访问,来自类外部的任何访问都是非法的。( )
A. 错误
B. 正确
满分:2分
19.空类型指针不能进行指针运算,也不能进行间接引用。( )
A. 错误
B. 正确
满分:2分
20.程序设计的目标在正确的前提下,其重要性排列次序依次为:可读,可维护,可移植和高效( )
A. 错误
B. 正确
满分:2分
三、多选题(共10道试题,共20分。)
1.C++语言的跳转语句中,对于break和continue说法不正确的是______。
A. break语句只应用于循环体中
B. continue语句只应用于循环体中
C. break是无条件跳转语句,continue不是
D. break和continue的跳转范围不够明确,容易产生问题
满分:2分
2.在下面的一维数组定义中,没有语法错误的是______。
A. int a[ ]={1,2,3}B. int a={0}C. int a[ ]
D. int a
3.考虑函数原型void test(int a ,int b=7,char z=’*’),下面的函数调用中,属于合法调用的是______。
A. test(5)B. test(5,8)C. test(6,’#’)D. test(0,0,’*’)
满分:2分
4.下列说法中错误的是______。
A. C++程序总是从第一个定义的函数开始执行
B. C++程序总是从main函数开始执行
C. C++函数必须有返回值,否则不能使用函数
D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
满分:2分
5.下面哪些保留字可以作为函数的返回类型______。
A. void
B. int
C. new
D. long
满分:2分
6.函数调用可以______。
A. 出现在一个表达式中
B. 出现在执行语句中C. 作为一个函数的实参
D. 作为一个函数的形参
7.下列关于构造函数的描述中,正确的是______。
A. 构造函数可以设置默认参数B. 构造函数在定义类对象时自动执行
C. 构造函数可以是内联函数
D. 构造函数不可以重载
8.下列说法中错误的是______。
A. 不允许设置参数的默认值
B. 设置参数的默认值只能在定义函数时设置
C. 设置参数的默认值时,应该设置右边的参数
D. 设置参数的默认值时,应该全部参数都设置
满分:2分
9.下列哪种函数不可以是虚的______。
A. 自定义的构造函数
B. 拷贝构造函数C. 静态成员函数
D. 析构函数
满分:2分
10.下面关于指针变量和引用变量的说法正确的是______。
A. 指针变量存放的是内存地址,并且可以置为0
B. 定义引用变量时,必须同时指明具体被引用的对象或变量
C. 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
D. 类中的数据成员可以是指针变量,但不能是引用变量
页:
[1]