2022年期末考试VC++练习题 .pdf

上传人:Q****o 文档编号:26157668 上传时间:2022-07-16 格式:PDF 页数:12 大小:80.34KB
返回 下载 相关 举报
2022年期末考试VC++练习题 .pdf_第1页
第1页 / 共12页
2022年期末考试VC++练习题 .pdf_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《2022年期末考试VC++练习题 .pdf》由会员分享,可在线阅读,更多相关《2022年期末考试VC++练习题 .pdf(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1 1 大一期末考试VC+ 练习题一、选择题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 a34=3,4,2,8,6;”,则元素a21的值为( A)。A) 0 B) 4 C) 8 D) 6 5.下

2、列情况中,哪一种情况不会调用拷贝构造函数( 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.下列有关继承和派生

3、的叙述中,正确的是( C ) A)派生类不能访问通过私有继承的基类的保护成员B)多继承的虚基类不能够实例化C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现9.实现运行时多态的机制是(A )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 12 页 - - - - - - - - - 2 2 A)虚函数B)重载函数C)静态函数D)模版函数10.若有下面的函数调用:fun(a+b, 3, max(n-

4、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 using namespac

5、e std; int i = 0; int fun(int n) 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)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 12 页 - - - - - - - - - 3 3 char str = j

6、ob, *p = str; cout *(p+2) endl; A)98 B )无输出结果 C)字符 b的地址 D)字符 b16.下面程序的输出结果是(C )#include using namespace std; class A public: A (int i) x = i; void dispa () cout x “, ”; 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 ; ; voi

7、d main() B b(2); b.dispb(); A)10,2 B)12,10 C)12,2 D)2,2 17.下面程序的输出结果是( C)#include using namespace std; class Base public: Base(int i) cout i; Base () ; class Base1: virtual public Base public: Base1(int i, int j=0) : Base(j) cout i; Base1() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师

8、精心整理 - - - - - - - 第 3 页,共 12 页 - - - - - - - - - 4 4 ; 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: B

9、ase2 mem2; Base1 mem1; ; void main() Derived objD (1, 2, 3, 4); A)134122 B)123412 C)14302012 D)143212 18.下面程序的输出结果是(C)#include using namespace std; class Base public: virtual void f() cout “f0+”; void g() cout “g0+”; ; class Derived : public Base public: void f() cout “f+ ”; void g() cout f(); p-g()

10、; A)f+g+ B)f0+g+ C)f+g0+ D) f0+g0+ 19.下面程序的输出结果是(C )#include using namespace std; class Sample 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 12 页 - - - - - - - - - 5 5 friend long fun (Sample s) if (s.x 2) return 1; return s.x * fun(Sample(s.x-1); public: Samp

11、le (long a) x = a; private: long x; ; void main() int sum = 0; for (int i=0; i4; i+) sum += fun(Sample(i); cout sum; A)12 B) 16 C)10 D )34 20.以下程序的输出结果是:(D )#include using namespace std; int fun(char *s) char *p=s; while (*p!=0) p+; return (p-s); void main() coutfun(abc)endl; A0 B. 1 C. 2 D. 3 名师资料总

12、结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 12 页 - - - - - - - - - 6 6 21.有如下程序段:int i=1; while(1) i+; if (i=10) break; if(i%2=0) coutGetValue() D) x.GetValue( ) 25.假定 AA为一个类, int a() 为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为(A)。A) int AA:a( ) B) int AA:a() C) AA:a() D) AA

13、:int a() 26.有如下程序:#include using namespace std; class Test public: Test() Test()cout#; ; int main() Test temp2, *pTemp2; return 0; 执行这个程序输出星号(#)的个数为( B )。A)1 B )2 C )3 D )4 27.有如下程序:#include using namespace std; class MyClass public: MyClass(int i=0)cout1; MyClass(const MyClass&x)cout2; MyClass& ope

14、rator=(const MyClass&x)cout3; return *this; MyClass()cout4; ; int main() MyClass obj1(1),obj2(2),obj3(obj1); obj1=obj2; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 12 页 - - - - - - - - - 8 8 return 0; 运行时的输出结果是(A)。A)1123444 B )11114444 C)121444 D )11314444 2

15、8.有如下程序: #include using namespace std; class point public: static int number; public: point() number+; point() number-; ; int point:number=0; void main() point *ptr; point A,B; point *ptr_point=new point3; ptr=ptr_point; point C; delete ptr; cout1) #include using namespace std; int f(int); int main(

16、) int n,s; coutn; s= f(n); coutThe result is sendl; 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 using namespace std; class Base public: virtual Base () cout “Destructor Base” endl; ; class Der

17、ived : public Base public: Derived() cout “Destructor Derived” endl; ;void main () 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 12 页 - - - - - - - - - 10 10 Base *pBase = new Derived; delete pBase ; 三、阅读程序,写出运行结果1. #include #include using namespace std; class

18、 CD char name20; 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 endl; ; CD dx; void main() CD dy; dx.Init( 歌唱祖国 ,30); dy.Init( 义勇军进行曲 ,3*dx.Getnumber ()+5); dx.Output(); dy.Outpu

19、t(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 12 页 - - - - - - - - - 11 11 歌唱祖国30 义勇军进行曲95 2#include using namespace std; int f(int a) return +a; int g(int& a) return +a; void main() int m=0,n=0; m+=f(g(m); n+=f(f(n); coutm=mendl; coutn=nendl; 3. #includ

20、e using namespace std; class Demo public: Demo()coutdefault constructorn; Demo(const Demo &x)coutcopy constructorn; ; Demo userCode(Demo b)Demo c(b);return c; void main() Demo a,d; coutcalling userCode()n; d = userCode(a); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -

21、 第 11 页,共 12 页 - - - - - - - - - 12 12 执行上面的程序的过程中,构造函数Demo()和 Demo(const Demo &x)被调用的次数分别是多少次?五、编写程序1、编写函数计算 y=1!+2!+3!.n! ,n 作为参数传递,在主函数调用该函数并输出结果。2、编写函数找出二维数组(5*4)中元素的最大值与最小值,并返回其最大值与最小值。测试结果。3、编写一个三角形类,有计算面积,显示面积的功能等,并测试。要求有参数的构造函数及复制构造函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 12 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁