全国计算机等级考试二级C笔试试题.pdf

上传人:深夜****等你... 文档编号:84256526 上传时间:2023-04-04 格式:PDF 页数:15 大小:447.70KB
返回 下载 相关 举报
全国计算机等级考试二级C笔试试题.pdf_第1页
第1页 / 共15页
全国计算机等级考试二级C笔试试题.pdf_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《全国计算机等级考试二级C笔试试题.pdf》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级C笔试试题.pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2021 年 3 月 二级 C+真题及参考答案 一、选择题每题 2 分,共 70 分 11对 C+编译器区分重载函数无任何意义的信息是 A参数类型 B参数个数 C返回值类型 D常成员函数关键字 coast 12有如下类定义和变量定义:class A publie:Adata=0;A int GetData coast return data;void SetDataint n data=n;private:int data;ccnst A a;A b;以下函数调用中错误的选项是 Aa.GetData;Ba.SetData10;Cb.GetData;Db.SetData10;13有如下类定义和变

2、量定义:class Parents public:int publicuata;private:int privateData;class ChildA:public Parents/*类体略*/;class ChildB:private Parents/*类体略*/;ChildA a;ChildBb;以下语句中正确的选项是 Acouta.publicData endl;Bcouta.privateData endl;Ccoutb.publicData endl;Dcoutb.privateData open“;17以下描述中,不属于面向对象思想主要特征的是 A封装性 B跨平台性 C继承性 D

3、多态性 18有如下程序段:Tnt i=4;int j=l;int main int i=8,j=i;coutijendl;运行时的输出结果是 A44 B41 C88 D81 19有如下程序段:int i=5;whileint i=0cout?*;i-;运行时输出“*的个数是 A0 B1 C5 D无穷 20己知有数组定义 char a34;以下表达式中错误的选项是 Aa2=“WIN Bstrcpya2,“WIN Ca 23=W Da01=a01 21函数 fun 的原型为 int funint,int,int;以下重载函数原型中错误的选项是 Achar funint,int;Bdouble fu

4、nint,int,double;Cint funint,char*;Dfloat fun int,int,int;22建立一个类对象时,系统自动调用 A析构函数 B构造函数 C静态函数 D友元函数 23通过派生类的对象可直接访问其 A公有继承基类的公有成员 B公有继承基类的私有成员 C私有继承基类的公有成员 D私有继承基类的私有成员 24己知表达式+a 中的“+是作为成员函数重载的运算符,那么及十+a 等效的运算符函数调用形式为 Aa.orerator+1 Boperator+a Coperator+a,l Da.operator+25在定义一个类模板时,模板形参表是用一对括号括起来的,所采用

5、的括号是 A B C D 26当使用 ifstream 流类定义一个流对象并翻开一个磁盘文件时,文件的默认翻开方式为 Aios_base:in Bios_base:in|ios_base:out Cios_base:out Dios_base:in&ios_base:out 27有如下程序:#include#include using namespace std;class XCD char*a;int b;public:XCDchar*aa,int bb a=new charstrlenaa+1;strcptya,aa;b=bb;Char*Geta return a;int Getb ret

6、urn b;int main char*pl=“abcd,*p2=“weirong;int dl=6,d2=8;XCD xpl,dl,Yp2,d2;coutstrien x.Geta+y.Getb+endl;return 0;运行时的输出结果是 A12 B16 C14 D11 28有如下程序:#include#include using namespace std;class XCF int a;public:XCF int aa=0:a aa cout“1;XCF XCF&x a=x.a;cout“2;XCFcouta;int Getareturn a;int main XCF dl5,d7

7、 dl;XCF*pd=new XCF8;coutGeta;delete pd;return 0;运行时的输出结果是 A121SS88 B12188SS C12185 D128512 29类 MyClass 声明如下:class MyClass int n;public;MyClassint k:nk int getValueconstreturn n;在以下数组定义中正确的选项是 AMyClass x12;BMyClass x22=new MyClass1,new MyClass2;CMyClass*x32;DMyClass*x42=MyClass1,MyClass2;30有如下程序:#inc

8、lude using namespace std;class AA lilt k;protected:int n;void setKint k this-k=k;public:void setNint n this-n=n;class BB:public/*类体略*/;int main BB x_;/1 x.n=1;/2 x.setN 2;/3 x.k=3;/4 x.setK4;return 0;在标注号码的四条语句中正确的选项是 A1 B2 C3 D4 31有如下类定义:class XX int xx;public:XX:xx0cout A;XXint n:xx ntout B;Class

9、YY:public XX Int yy;public:YY:yy 0cout+yy;YY int n:XX n+1,yy n coutyy;YY int m,int n:XX m,yyncoutyy;以下选项中,输出结果为 A0 的语句是 AYY y10,0;BYY y21;CYY y30;DYY y4;32有如下程序:#include Using namespace std;class A public:virtual void fcout+1;void gcout2;class B:public A public:virtual void fcout3;void gecut4;void s

10、howA&aa.f;a.g ;int main B b;showb;return 0;运行时的输出结果是 A12 B34 C14 D32 33有如下程序:#include using namespace std;class Pair int m;int n;public:Pairint i,int j:mi,nj boot operator pair pconst;/须在类体外给出定义 ;int main Pair Al3,4,p24,3;p34,5;Coutp2 P1 p3p2;return 0;运算符函数。operator的功能是比拟两个 Pair 对象的大小,当左边对象大时,返回 tru

11、e,否那么返回 false。比拟规那么是首先比拟两对象的 m 成员,m 大者为大;当 m 相等时比拟 n,n 大者为大。程序输出 0101,以下对运算符重载函数的正确定义是 Abool Pair:operatorPair pconst if m!=p.m return mp.m;return np.n;Bbool Pair:;operatorPair p if m!=p.m return mp.m;return np.n;Cbool Pair:operatorPair pconst if mp.m return true;return np.n;Dbool Pair:;operatorPair

12、 p if mp.m return true;return np.n;34假定以下语句都是程序运行后首次执行的输出语句,其中输出结果及另外三条语句不同的语句是 Acoutsetfill*123setw9321;Bcoutsetfill*setw6left123setw6right321;C cout123setfill*setw 6321;Dcoutsetfill*SetW9left123321;35有如下程序:#include using namespace std;class ONE int c;public:ONE:c0cout1;ONEint n:c ncout2;class TWO

13、ONE onel;ONE one2;public:TWOint m:one2mcout3;int maint TWO t4 return 0 运行时的输出结果是 A3 B23 C123 D213 二、填空题每空 2 分,共 30 分 6有如下程序段:int x=1,Y=2,z=3;x=xz;y=yz;z=xy;coutxyz;执行这个程序段的输出是【6】。7有如下程序段:ferint i=1;i=50;i+ifi%3!=0 continue;else ifi%5!=0 continue;touti“,;执行这个程序段的输出是【7】。8有如下程序段:Char c 20=“examination;

14、c4=0;coutcendl;执行这个程序段的输出是【8】。9下面的函数利用递归实现了求1+2+3+n 的功能:int sumint n ifn=0 return 0;else return n+sumn-1;在执行 sum10的过程中,递归调用sum 函数的次数是【9】。10非成员函数应该声明为类【10】函数才能访问该类的私有成员。11有如下程序:#include using namespace std;class Monitor public:Monitor char t:type t void print const cout“The type of monitor is typeend

15、l;private:char type;class Computer public:Computerint i,char c:【11】void Printconst cout“The computer isidendl;mon.Print;private:int id;Monitor mon;const Computer myComputer101,B;myComputer.Print;return 0;请将程序补充完整,使程序在运行时输出:The computer is 101 The type of monitor i.s 8 12有如下程序:#include using namespac

16、e std class Animal public:virtual char*getTypeconst return“Animal;virtual char*getVoiceconst return“Voice;;Class Dog:public Animal public:char*getType const return“Dog;char*getVoice const return“Woof ;void typeAnimal&a couta.getType;void speakAnimal a couta.getVoice;int main Dog d;type d;cout“speak;

17、speakd;coutendi;return 0;运行时的输出结果是【12】。13补充完整下面的类定义:const double PI=3.14;class Circle /圆形物体的抽象基类 protected:double r;/半径 public:Circledouble radius=0:rradius 【13】;/计算圆形物体外表积的纯虚函数声明 ;class Cylinder:public Circle /圆柱体类 double h;/高度 public:Cylindr double radius=0,doubli height=0:Circleradius,h height Vi

18、rtual double Area /计算圆柱体的外表积 return 2*PI*r*r+h;;14补充完整下面的类定义:class XCH char*a;public:XCHchar*as /构造函数 a=new charstrlenaa+1;strcpya,aa;XCH&operator=const XCH&x /重载赋值函数 Delele a;A=new charstrlenx.a+l;strcpya,x.a 【14】;XCH delete a;15补充完整下面的模板定义:template /Type 为类型参数 class Xtwo /由两个 Type 类型的数据成员构成的模板类 Ty

19、pe a;Type b;public:XtweType aa=0,Type bb=0:aaa,bbb int Ccmpare /比拟 a 和 b 的大小 if abreturm 1;else ifa=b return 0;else return-1;Type Snm return a+b;/返回 a 和b 之和 Type Mult;/函数声明,返回a 和 b 之乘积 ;Template 【15】:Multreturn a*b;/Mult 函数的类外定义 参考 答案 一、选择题:11D 12B 13A 14B 15 B 16 A 17 B 18C 19)A 20 D 21 D 22B 23 A

20、24 B 25 C 26B 27A 28B 29C 30B 31 D 32 D 33 C 34C 35B 二、填空题 6 213 7 15,30,45 8 examination910 10友元 11idi,momc 12Dog speak Woof 13Virtual double Area return PI*r*r 14 return *a 15 Xwo 2021 年 9 月二级 C+笔试试卷 11函数 FA 调用 FB,假设要把这两个函数定义在同一个文件中,那么 。AFA 必须定义在 FB 之前 BFB 必须定义在 FA 之前 C假设 FA 定义在 FB 之后,那么 FA 的原型必须出

21、现在 FB 的定义之前 D假设 FB 定义在 FA 之后,那么 FB 的原型必须出现在 FA 的定义之前 12有如下两个类定义:class AA;class BB AA v1,*v2;BB v3;int*v4;其中有一个成员变量的定义是错误的,这个变量是 。Av1 Bv2 Cv3 Dv4 13有如下类定义:class XX int xdata;public:XX(int n=0):xdata(n);class YY:public XX int ydata;public:YY(int m=0,int n=0):XX(m),ydata(n);YY 类的对象包含的数据成员的个数是 。A1 B2 C3

22、 D4 14以下关于运算符函数的描述中,错误的选项是 。A运算符函数的名称总是以 operator 为前缀 B运算符函数的参数可以是对象 C运算符函数只能定义为类的成员函数 D在表达式中使用重载的运算符相当于调用运算符重载函数 15以下关于模板形参的描述中,错误的选项是 。A模板形参表必须在关键字 template 之后 B模板形参表必须用括弧()括起来 C)可以用 class 修饰模板形参 D可以用 typename 修饰模板形参 16在以下枚举符号中,用来表示“相对于当前位置文件定位方式的是 。Aios_base:cur Bios_base:beg Cios_base:out Dios_b

23、ase:end 17以下字符串中可以用作 C+标识符的是 。A2021var Bgoto Ctest-2021 D_123 18以下枚举类型的定义中,包含枚举值 3 的是 。Aenum test RED,YELLOW,BLUE,BLACK;Benum test RED,YELLOW=4,BLUE,BLACK;Cenum test RED=-1,YELLOW,BLUE,BLACK;Denum test RED,YELLOW=6,BLUE,BLACK;19有如下程序段:int i=1;while(1)i+;if(i=10)break;if(i%2=0)cout*;执行这个程序段输出字符*的个数是

24、。A10 B3 C4 D5 20数组 arr 的定义如下:int arr5=1,2,3,4,5;以下语句中输出结果不是 2 的是 。Acout *arr+1 endl;Bcout *(arr+1)endl;Ccout arr1 endl;Dcout *art endl;21计算斐波那契数列第 n 项的函数定义如下:int fib(int n)if(n=0)return 1;else if(n=1)return 2;else return fib(n-1)+fib(n-2);假设执行函数调用表达式 fib(2),函数 fib 被调用的次数是 。A1 B2 C3 D4 22Sample 是一个类,

25、执行下面语句后,调用 Sample 类的构造函数的次数是 。Sample a2,*P=new Sample;A0 B1 C2 D3 23以下关于虚基类的描述中,错误的选项是 。A使用虚基类可以消除由多继承产生的二义性 B构造派生类对象时,虚基类的构造函数只被调用一次 C声明“class B:virtual public A说明类 B 为虚基类 D建立派生类对象时,首先调用虚基类的构造函数 24将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是 。A不合法的运算符 B一元运算符 C无操作数的运算符 D二元运算符 25有如下模板声明:template class A;以下声明中,及上述

26、声明不等价的是 。Atemplate class A;Btemplate class A;Ctemplate class A;Dtemplate class A;26以下关于 C+流的描述中,错误的选项是 。AcoutA表达式可输出字符 A Beof()函数可以检测是否到达文件尾 C对磁盘文件进展流操作时,必须包含头文件 fstream D以 ios_base:out 模式翻开的文件不存在时,将自动建立一个新文件 27有如下程序:#include using namespace std;class Toy public:Toy(char*_n)strcpy(name,_n);count+;To

27、y()count-;char*GetName()return name;static int getCount()return count;private:char name10;static int count;int Toy:count=0;int main()Toy t1(Snoopy),t2(Mickey),t3(Barbie);coutt1.getCount()endl;return 0;运行时的输出结果是 。A1 B2 C3 D运行时出错 28有如下程序:#include using namespace std;class A public:A(int i):r1(i)void p

28、rint()coutEr1-;void print()const coutCr1*r1-;pivate:int r1;int main()日 A a1(2);const A a2(4);a1.print();a2.print();return 0;运行时的输出结果是 。A运行时出错 BE2-C16-CC4-C16-DE2-E4-29有如下程序:#include using namespace std;class Name char name20;public:Name()strcpy(name,);cout?;Name(char*fname)strcpy(name,fname);cout?;i

29、nt main()Name names3=Name(张三),Name(李四);return 0;运行此程序输出符号?的个数是 。A0 B1 C2 D3 30有如下程序:#include using namespace std;class AA public:AA()cout1;class BB:public AA int k;public:BB():k(0)cout2;BB(int n):k(n)cout3;int main()BB b(4),c;return 0;运行时的输出结果是 。A1312 B132 C32 D1412 31有如下程序:#include using namespace

30、std;class C1 public:C1()cout1;class C2:public C1 public:C2()cout2;int main()C2 cb2;C1*cb1;return 0;运行时的输出结果是 。A121 B21 C211 D12 32有如下程序:#include using namespace std;class Publication/出版物类 char name30;public:Publication(char*name=未知名称)strcpy(this-name,name);const char*getName()const return name;virtu

31、al const char*getType()const return 未知类型;class Book:public Publication/书类 public:Book(char*name):Publication(name)virtual const char*getType()const return 书;void showPublication(Publication&p)coutp.getType():p.getName()endl;int main()Book book(精彩人生);showPublication(book);return 0;运行时的输出结果是 。A未知类型:未知

32、名称 B未知类型:精彩人生 C书:未知名称 D书:精彩人生 33以下关于运算符重载的描述中,错误的选项是 。A:运算符不能重载 B类型转换运算符只能作为成员函数重载 C将运算符作为非成员函数重载时必须定义为友元 D重载 运算符应完成“下标访问操作 34有如下程序:#include#include using namespace std;int main()int s=123,234;coutrightsetfill(*)setw(6);for(int i=0;i2;i+)coutsi20;i-=2)couti,;运行时循环体的执行次数是【7】次。8利用表达式 ai可以访问 int 型数组 a

33、中下标为 i 的元素。在执行了语句 int*p=a;后,利用指针 p 也可 访问该元素,相应的表达式是【8】。9下面是一个递归函数,其功能是使数组中的元素反序排列。请将函数补充完整。void reverse(int*a,int size)if(size2)return;int k=a0;a0=asize-1;asize-1=k;reverse(a+l,【9】);10类 Sample 的构造函数将形参 data 赋值给数据成员 data。请将类定义补充完整。class Sample public:Sample(int data=0);private:int data;Sample:Sample(

34、int data)【10】11有如下类定义:class Sample public:Sample();Sample();private:static int data;将静态数据成员 data 初始化为 0 的语句是【11】。12“图形类 Shape 中定义了纯虚函数 CalArea(),“三角形类 Triangle 继承了类 Shape,请将 Triangle 类中的 CalArea 函数补充完整。class Shape public:virtual int CalArea()=0;class Triangle:public Shape public:Triangle(int s,int h

35、):side(s),height(h)【12】。return side*height/2;private:int side;int height;13有如下程序:#include using namespace std;class GrandChild public:GrandChild()strcpy(name,Unknown);const char*getName()const return name;virtual char*getAddress()const=0;private:char name20;class GrandSon:public GrandChild public:Gr

36、andSon(char*name)char*getAddress()const return Shanghai;int main()GrandChild*gs=new GrandSon(Feifei);coutgetName()住在getAddress()endl;delete gs;return 0;运行时的输出结果是【13】。14如下程序定义了“单词类 Word,类中重载了运算符,用于比拟“单词的大小,返回相应的逻 辑值。程序的输出结果为:After Sorting:Happy Welcome,请将程序补充完整。#include#include using namespace std;cl

37、ass Word public:Word(string s):str(s)string getStr()return str;bool operator (Word w)const return(strw.str);friend ostream&operator(ostream&output,const Word&w)outputw.str;return output;private:string str;int main()Word w1(Happy),w2(Welcome);coutAfter sorting:;if(w1w2)coutw1 w2;else coutw2 w1;return

38、 0;15请将以下模板类 Data 补充完整。template class Data public:void put(T v)val=v;【15】get()/返回数据成员 val 的值,返回类型不加转换 return val;private:T val;2021年9月二级C+笔试试卷参考答案 一、选择题 1C 2B 3D 4A 5B 6A 7C 8B 9C 10D 11D 12C 13B 14C 15B16A 17D 18A 19C 20D 21B 22D 23C 24B 25D26A 27C 28B 29D 30A 31B 32D 33C 34B 35A 二、填空题 6double型715 8*(p+i)9size-2 10this-data=data11int Sample:data=012int CalArea(size,height)13Unknown住在Shanghai 14bool operator (Word w)15T 学习使人进步,相信能就一定能成功

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

当前位置:首页 > 应用文书 > 工作计划

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

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