c++练习习题(带答案)40656
更新时间:2024-03-17 22:38:01 阅读量: 综合文库 文档下载
- c罗推荐度:
- 相关推荐
欢迎共阅
一、选择题
1. C++语言属于( C )。
A) 自然语言 B) 机器语言 C)面向对象语言 D) 汇编语言 2. 下面选项中不属于面向对象程序设计特征的是(C) 。
A)继承性 B)多态性 C)相似性 D)封装性 3. 可用作C++语言用户标识符的一组标识符是( B )。
A) void define +WORD B) a3_b3 _123 YN C) for -abc Case D) 2a DO sizeof
4. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为(A)。 A) 0 B) 4 C) 8 D) 6 5. 下列情况中,哪一种情况不会调用拷贝构造函数 ( B )? A)用派生类的对象去初始化基类对象时 B)将类的一个对象赋值给该类的另一个对象时 C)函数的形参是类的对象,调用函数进行形参和实参结合时 D)函数的返回值是类的对象,函数执行返回调用者时 6. 以下哪一关键字可用于重载函数的区分( C ) A)extern B)static C)const D)virtual 7. 下列有关数组的叙述中,正确的是( B ) A)C++中数组的存储方式为列优先存储 B)数组名可以作为实参赋值给指针类型的形参 C)数组下标索引从1开始,至数组长度n结束 D)数组指针的语法形式为:类型名 *数组名[下标表达式]; 8. 下列有关继承和派生的叙述中,正确的是( C ) A)派生类不能访问通过私有继承的基类的保护成员 B)多继承的虚基类不能够实例化 C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数 D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现 9. 实现运行时多态的机制是( A ) A)虚函数 B)重载函数 C)静态函数 D)模版函数 10.若有下面的函数调用:
fun(a+b, 3, max(n-1, b)); 其中实参的个数是( A ) A)3 B)4 C)5 D)6
11.下列关于this指针的说法正确的是( B )
A)this指针存在于每个函数之中
B)在类的非静态函数中this指针指向调用该函数的对象 C)this指针是指向虚函数表的指针
欢迎共阅
D)this指针是指向类的函数成员的指针
12.在下列关于C++函数的叙述中,正确的是( C )
A)每个函数至少要有一个参数 B)每个函数都必须返回一个值 C)函数在被调用之前必须先声明 D)函数不能自己调用自己 13.下列运算符中,不能重载的是 ( C )
A)&& B)!= C). D)-> 14.下面程序的输出结果是( B )
#include
static int a = 2; a++; return a+n; }
void main() {
int k = 5; { int i = 2; k += fun(i); } k += fun(i); cout << k; }
A)13 B)14 C)15 D)16 15.下面的程序段的运行结果为( D ) char str[] = \cout << *(p+2) << endl; A)98 B)无输出结果 C)字符’b’的地址16.下面程序的输出结果是( C )
#include
public:
A (int i) { x = i; }
void dispa () { cout << x << “,”; }
)字符’b’ D 欢迎共阅
private : int x ; };
class B : public A {
public:
B(int i) : A(i+10) { x = i; }
void dispb() { dispa(); cout << x << endl; } private : int x ; }; void main() {
B b(2); b.dispb(); }
A)10,2 B)12,10 C)12,2 D)2,2 17.下面程序的输出结果是( C )? #include
public: Base(int i) { cout << i; } ~Base () { } }; class Base1: virtual public Base {
public: Base1(int i, int j=0) : Base(j) { cout << i; } ~Base1() {} };
class Base2: virtual public Base {
public:
Base2(int i, int j=0) : Base(j) { cout << i; } ~Base2() {} };
class Derived : public Base2, public Base1
欢迎共阅
{
public:
Derived(int a, int b, int c, int d) : mem1(a), mem2(b), Base1(c), Base2(d), Base(a) { cout << b; } private:
Base2 mem2; Base1 mem1; };
void main() { Derived objD (1, 2, 3, 4); } 18.下面程序的输出结果是( C ) #include
public: virtual void f() { cout << “f0+”; } void g() { cout << “g0+”; } }; class Derived : public Base {
public: void f() { cout << “f+”; } void g() { cout << “g+”; } }; void main() { Derived d; Base *p = &d; p->f(); p->g(); } A)f+g+ B)f0+g+ C)f+g0+ D)f0+g0+ 19.下面程序的输出结果是( C ) #include
friend long fun (Sample s) {
if (s.x < 2) return 1;
return s.x * fun(Sample(s.x-1)); }
public:
Sample (long a) { x = a; }
欢迎共阅
private: long x; };
void main() {
int sum = 0;
for (int i=0; i<4; i++) {
sum += fun(Sample(i)); } cout << sum; }A)12 B)16 C)10 D)34 20.以下程序的输出结果是:(D ) #include
void main(){ cout< A.0 B. 1 C. 2 D. 3 21.有如下程序段: int i=1; while(1) { i++; if (i==10) break; if(i%2==0) cout<<’*’; } 执行这个程序段输出字符*的个数是(C) A. 10 B. 3 C. 4 D.5 22.下列关于虚基类的描述中,错误的是(C) A. 使用虚基类可以消除由多继承产生的二义性 B. 构造派生类对象时,虚基类的构造函数只被调用一次 欢迎共阅 C. 声明 class B:virtual public A 说明类B为虚基类 D. 建立派生类对象时,首先调用虚基类的构造函数 23.有下类定义 Class A { Char *a; Public: A():a(0){} A(char *aa) {//把aa所指字符串拷贝到a所指向的存储空间 A=___________________; Strcpy(a,aa); ~A() {delete [] a;} }; 正确的选择是(A) A. new char[strlen(aa)+1] B. char[strlen(aa)+1] C. char[strlen(aa)] D. new char[sizeof(aa)-1] 24.假定AA为一个类,a为该类私有的数据成员,GetValue( )为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为(d )。 A) x.a B) x.a() C) x->GetValue() D) x.GetValue( ) 25.假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为( A )。 A) int AA::a( ) B) int AA:a() C) AA::a() D) AA::int a() 26.有如下程序: #include int main(){ Test temp[2], *pTemp[2]; return 0; } 执行这个程序输出星号(#)的个数为(B )。 A)1 B)2 C)3 D)4 27.有如下程序: #include 欢迎共阅 class MyClass{ public: MyClass(int i=0){cout<<1;} MyClass(const MyClass&x){cout<<2;} MyClass& operator=(const MyClass&x){cout<<3; return *this;} ~MyClass(){cout<<4;} }; int main(){ MyClass obj1(1),obj2(2),obj3(obj1); obj1=obj2; return 0; }运行时的输出结果是( A)。 28.有如下程序: #include public: static int number; public: point() { number++;} ~point() {number--;} }; int point::number=0; void main() { point *ptr; point A,B; { point *ptr_point=new point[3]; ptr=ptr_point; } point C; delete[] ptr; cout< 程序结果为(A) A)3 B)4 C)6 D)7 29.友元运算符obj++被C++编译器解释为( D )。 A. operator++(obj) B. operator++(obj,0) 欢迎共阅 B. obj.operator++( ) D. obj.operator++(0) 二、程序填空 1.用递归法求从1到n的立方和: f(1)=1 (n=1) f(n)=f(n-1)+n3 (n>1) #include cout<<\ cin>>n; s= f(n) ; cout<<\ return 0; } int f(int n){ //递归法求立方和函数 if ( n==1 ) return 1; else return ( f(n-1)+n*n*n ); } 3. 请将下列程序补充完整,使得输出结果为“Destructor Derived Destructor Base”。 #include void main () { Base *pBase = new Derived; delete pBase ; } 欢迎共阅 三、阅读程序,写出运行结果 1. #include char name[20]; int number; public: void Init(char* aa, int bb) { strcpy(name,aa); number=bb; } char* Getname () {return name;} int Getnumber () {return number;} void Output() {cout<< name <<' '<< number < CD dy; dx.Init(\歌唱祖国\ dy.Init(\义勇军进行曲\ dx.Output(); dy.Output(); } 歌唱祖国 30 义勇军进行曲 95 2.#include int g(int& a){ return ++a; } void main(){ int m=0,n=0; m+=f(g(m)); n+=f(f(n)); cout<<\ 欢迎共阅 cout<<\ } 3. #include public: Demo(){cout<<\ Demo(const Demo &x){cout<<\}; Demo userCode(Demo b){Demo c(b);return c;} void main() { Demo a,d; cout<<\ d = userCode(a); } 执行上面的程序的过程中,构造函数Demo()和Demo(const Demo &x)被调用的次数分别是多少次? 五、编写程序 1、编写函数计算y=1!+2!+3!...n! ,n作为参数传递,在主函数调用该函数并输出结果。 2、编写函数找出二维数组(5*4)中元素的最大值与最小值,并返回其最大值与最小值。测试结果。 3、编写一个三角形类,有计算面积,显示面积的功能等,并测试。要求有参数的构造函数及复制构造函数
正在阅读:
c++练习习题(带答案)4065603-17
小学教师语言文字工作计划怎么写03-05
2019项目经理工作计划 - 工作计划03-14
防溺水安全教育知识竞赛试卷03-02
防雷防汛防溺水安全教育03-31
防溺水安全教育演讲稿 - 310-17
纪委工作计划01-13
服装店长工作计划怎么写04-06
防汛、防雷、防冰雹、防溺水安全教育教案01-10
简短销售工作计划【优秀10篇】03-26
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- c++
- 习题
- 练习
- 答案
- 40656
- 30MW发电机电气运行规程2013.5.14 - 图文
- 防腐知识
- 开心十三张
- 美国各州及港口名称和缩写
- 质量管理知识竞赛题库 - 图文
- Dynamic Positioning
- 大学会计综合实训室建设投资项目可行性研究报告 - 图文
- 德鲁克:跟着这样的领导干才有前途
- 初中文言虚词练习题
- 在全镇经济工作总结表彰大会上的讲话 - 图文
- 20150624名师大讲堂 公开课活动方案
- 外路鼻腔泪囊吻合术与鼻内窥镜下鼻腔泪囊吻合术疗效比较
- 党课复习资料
- 发动机原理复习重点解答
- 2017-2018年最新人教版二年级数学上册期末试卷
- 两学一做党员先进事迹材料:奉献三尺讲台 真爱桃李芬芳-精品范文
- 信息技术与学科课程的深度融合
- 莒南县监理站贯彻落实全市监理工作会议情况
- 第十届杰赛普国际法模拟法庭大赛在人大法学院成功举行
- 2017新版部编本二年级上册语文《望庐山瀑布》教案、说课评课