您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 2011-2012年度c++期末试题
科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。2011~2012年度c++期末试试题一选择题(共50分每题2分)1.下列字符列中,可作为C++语言程序自定义标识符是()。A.switchB.fileC.breakD.do2.运算符+、=、=、%中,优先级最低的运算符是()。A.+B.=C.=D.%3.设变量m,n,a,b,c,d均为0,执行(m=a==b)||(n=c==d)后,m,n的值是()。A.0,0B.0,1C.1,0D.1,14.字符串”vm\x43\\\np\102qu”的长度是()。A.8B.9C.16D.175.设有代码“inta=6;”,则执行了语句“a+=a-=a*a;”后,变量a的值是()。A.0B.-24C.-40D.–606.voidmain(){intx=-1;do{x=x*x;}while(!x);}下列说法正确的是()。A.是死循环B.循环执行两次C.循环执行一次D.有语法错误7.下面有关for循环的正确描述是()。A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D.for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来8.下面程序段()。x=3;do{y=x--;if(!y){cout”x”;continue;}cout”#”;}科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。while(1=x=2);(1=x)=1,0bool型A.将输出##B.将输出##*C.是死循环D.含有不合法的控制表达式9.以下正确的说法是()。A.用户若需要调用标准函数,调用前必须重新定义B.用户可以直接调用所有标准库函数C.用户可以定义和标准库函数重名的函数,但是在使用时调用的是系统库函数D.用户可以通过文件包含命令将系统库函数包含到用户源文件中,然后调用系统库函数10.在参数传递过程中,对形参和实参的要求是()。A.函数定义时,形参一直占用存储空间B.实参可以是常量、变量或表达式C.形参可以是常量、变量或表达式D.形参和实参类型和个数都可以不同11.对数组名作函数的参数,下面描述正确的是()。A.数组名作函数的参数,调用时将实参数组复制给形参数组B.数组名作函数的参数,主调函数和被调函数共用一段存储单元C.数组名作参数时,形参定义的数组长度不能省略D.数组名作参数,不能改变主调函数中的数据12.若有语句inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则()不是对a数组元素的正确引用(其中0≤i10)。A.p[i]B.*(*(a+i))C.a[p-a]D.*(&a[i])13.以下程序的输出结果是()。#includeiostream.hvoidmain(){chars[]=,*p;intv1=0,v2=0,v3=0,v4=0;v1v2v3v4for(p=s;*p;p++)2434switch(*p){case'1':v1++;case'3':v3++;case'2':v2++;default:v4++;}科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。coutv1,v2,v3,v4endl;}A.4,2,1,1B.4,7,5,8C.7,3,2,1D.8,8,8,814.下列声明结构体变量错误的是()。A.structstudentB.structstudent{intno;{intno;charname[16];charname[16];}st1,st2;};structstudentst1,st2;C.structstudentD.structstudent{intno;{intno;charname[16];charname[16];};};structst1,st2;studentst1,st2;15.对类的构造函数和析构函数描述正确的是()。A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载16.下面对于友元函数描述正确的是()。A.友元函数的实现必须在类的内部定义B.友元函数是类的成员C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员17.派生类的对象对它的基类成员中()是可以访问的。A.公有继承的公有成员B.公有继承的私有成员C.公有继承的保护成员D.私有继承的公有成员18.C++类体系中,不能被派生类继承的有()。A.构造函数B.虚函数C.静态成员函数D.赋值操作函数19.以下()成员函数表示虚函数。A.virtualintvf(int);B.voidvf(int)=0;C.virtualvoidvf()=0;D.virtualvoidvf(int){};20.下面对静态数据成员的描述中,正确的是()。A.静态数据成员可以在类体内进行初始化B.静态数据成员不可以在类体内进行初始化科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。C.静态数据成员不能受private控制符的作用D.静态数据成员可以直接用类名调用??21.继承具有(),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。A.规律性B.传递性C.重复性D.多样性22.若有以下定义,则释放指针所指内存空间的操作是()。floatr=newsfloat[10];A.deleter;B.delete*r;C.delete[]r;D.deleter[];23.若有以下定义,则对字符串的操作错误的是()。chars[10]=”Program”,t[]=”test”;A.strcpy(s,t);B.coutstrlen(s);C.strcat(“this”,t);D.cint;24.在if语句中的表达式是()。A.只能是表达式B.只能是关系表达式和逻辑表达式C.只能是逻辑表达式D.可以是任意表达式25.在用关键字class定义的类中,以下叙述正确的是()。A.在类中,不作特别说明的数据成员均为私有类型B.在类中,不作特别说明的数据成员均为公有类型C.类成员的定义必须是成员变量定义在前,成员函数定义在后D.类的成员定义必须放在类定义体内部二填空题(共10分每题1分)1.【1】是标准C++指定的一个名字空间.2.已知a=10,b=15,c=1,d=2,e=0,则表达式c==be的值为【2】.3.若有以下数组a,数组元素:a[0]~a[9],其值为941282107513该数组可用的最小下标值是【3】.4.C++提供了内联函数,在定义函数时冠以关键字【4】5.inta[3][3]={{1,2,3},{4,5,6},{7,8,9}};其中a[1][2]的值为【5】.科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。6.有下列程序段,执行后的输出结果是【6】.inta=3,b=5;intmax(inta,intb){intc;c=ab?a:b;returnc;}voidmain(){inta=8;coutmax(a,b)endl;}(7)下列程序的输出结果是[11]。#includeiostreamusingnamespacestd;classTest{public:Test(){cnt++;}~Test(){cnt--;}staticintCount(){returncnt;}private:科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。staticintcnt;};intTest::cnt=0;intmain(){coutTest::Count0'';Testtl,t2;Test*pT3=newTest;Test*pT4=newTest;coutTest::Count0'';deletepT4;deletepT3;coutTest::Count()endl;return0;}(8)下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:阶乘的定义是n!=n*(n-1)*...*2*1)unsignedfact(unsignedn){if(n=1)return1;return[12];科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。}(9)下列程序的输出结果是[13]。#includeiostreamusingnamespacestd;templatetytenameTTfun(Ta,Tb){return(a=b)?:b;}intmain(){coutfun(3,6)','fun(3.14F,6.28F)endl;return0;}(10)下列程序的输出结果是[15]。#includeiostreamusingnamespacestd;classbase{public:intn;base(intx){n=x;}virtualvoidset(intm){n=m;coutn'';}};classderiveA:publicbase{public:科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。deriveA(intx):base(x){}voidset(mtm){n+=m;coutn'';}};classderiveB:publicbase[public:deriveB(intx):base(x){}voidset(intm){n+=m;coutn'';}};intmain(){deriveAdl(1);deriveBd2(3);base*pbase;pbase=&dl;pbase-aet(1);pbase=&d2;pbase-set(2)return0;}一选择题答案123456789101112131415BCCBDCDCDBBBBCA科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能。16171819202122232425CAADBBCCDA二填空题答案(1)std(2)1(3)0(4)inline(5)0(6)8(7)[11]042(8)[12]n*fact(n-1)(9)[13]3,3.14(10)[15]25编程题共40分(1,(10分),2(15分),3(15分))1.创建一个名为time的类,它包括分别表示小时、分钟和秒的int类型的数据成员以及两个构造函数,一个构造函数将数据成员初始化为8,另一个将数据成员初始化为一个固定的值。另有一成员函数将时间以10:10:10的格式显示在屏幕上,编写成为一个完整的程序。#includeiostream.hclassTime科学管理合理组织,不断深化“双基”建设,狠抓安全技术教育培训工作,全面落实“手指口述安全确认操作、岗位描述”安全管理规范,提高全员安全责任意识和整体操作技能
本文标题:2011-2012年度c++期末试题
链接地址:https://www.777doc.com/doc-4910776 .html