【MOOC】C++语言程序设计-华中农业大学 中国大学慕课MOOC答案_第1页
【MOOC】C++语言程序设计-华中农业大学 中国大学慕课MOOC答案_第2页
【MOOC】C++语言程序设计-华中农业大学 中国大学慕课MOOC答案_第3页
【MOOC】C++语言程序设计-华中农业大学 中国大学慕课MOOC答案_第4页
【MOOC】C++语言程序设计-华中农业大学 中国大学慕课MOOC答案_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【MOOC】C++语言程序设计-华中农业大学中国大学慕课MOOC答案第一章?C++语言概述单元测验1、【单选题】C++程序的基本构成单位是()。本题答案:【函数】2、【单选题】一个C++程序总是从()开始执行。本题答案:【主函数】3、【单选题】以下有关C++程序的叙述正确的是()。本题答案:【一条语句可以写在数行中】4、【单选题】C++语言是以()语言为基础逐渐发展演变而成的一种程序设计语言。本题答案:【C】5、【单选题】C++程序在使用cin、cout完成输入、输出时,需要使用include预处理命令包含头文件iostream,预处理命令以()开始。本题答案:【#】第二章基础知识单元测验1、【单选题】下列数据中,不合法的实型数据的是()。本题答案:【2.1e3.5】2、【单选题】若有定义:inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。本题答案:【2.500000】3、【单选题】设变量a是int型,f是float型,i是double型,则表达式10+’a’+i*f值的数据类型为()。本题答案:【double】4、【单选题】若有以下说明语句“chars=92;”,则该语句()。本题答案:【使s的值包含1个字符】5、【单选题】若变量已正确定义并赋值,以下符合C++语言语法的表达式是()。本题答案:【a=b=c+2;】6、【单选题】在C++语言中,逻辑值“真”用()表示。本题答案:【非0的数】7、【单选题】下列可用于C++语言用户标识符的一组是()。本题答案:【a3_b3,_123,Car】8、【单选题】下列选项中非法的表达式为()。本题答案:【x+1=x+1】9、【单选题】一个C++程序的执行从()。本题答案:【本程序的main函数开始,到本程序的main函数结束】10、【单选题】设有定义“intx;doubley;”及语句“x=y;”,则下面正确的说法是()。本题答案:【将y的整数部分赋给x】11、【单选题】下面4个选项中,均是合法整型常量的选项是()。本题答案:【160-0xff011】12、【单选题】下面4个选项中,均是合法实数的选项是()。本题答案:【123.52e-4123.】13、【单选题】下面4个选项中,均是合法转义字符的选项是()。本题答案:【'\\''\017''\n'】14、【单选题】已知“inta,b;”,用语句“cinab;”输入a,b的值时,不能作为输入的分隔符的是()。本题答案:【,】15、【单选题】以下程序段的输出结果是()。intx=10,y=10;coutx--,--yendl;本题答案:【10,9】16、【单选题】有一个字符串在程序中表示为\Name\\Address\n,则该字符串的长度是()。本题答案:【13】17、【单选题】若有定义“intx;”,则下面不能将x的值强制转换成双精度数的表达式是()。本题答案:【x(double)】18、【单选题】已知x,y为整型,z为实型,ch为字符型,则下列表达式中正确的是()。本题答案:【y=ch+x】19、【单选题】下列说法中错误的是()。本题答案:【变量名中可以包含特殊符号】20、【单选题】算术表达式的值的类型的规定,其中错误的是()。本题答案:【算术表达式的值的类型的直接有机器进行转化】21、【判断题】++和--运算符可以作用于常量。本题答案:【错误】22、【判断题】整型数据和字符型数据的类型不同,它们之间不能进行运算。本题答案:【错误】23、【判断题】变量的类型经过强制类型转换运算后其类型就改变了。本题答案:【错误】24、【判断题】C++提供自增(++)和自减(--)运算符,可以将变量加1或减1。如果运算符放在变量前面,则变量先加1(减1),然后在表达式中使用。如果运算符放在变量后面,则变量先在表达式中使用,然后加1(减1)。本题答案:【正确】25、【判断题】true值可以表示任何非0值,false值也可以表示0值。本题答案:【正确】26、【判断题】表达式由常量、变量、运算符、函数、圆括号等按一定规则组成的式子。但单独的常量或变量不是表达式。本题答案:【错误】27、【判断题】实型数赋值给整型时,仅取整数部分赋值,当整数部分的值超出整型变量的范围时,产生溢出,结果出错。本题答案:【正确】28、【判断题】C++中逗号也是一种运算符,在所有运算符中优先级最低。本题答案:【正确】29、【判断题】字符串常量:简称字符串,它们是用双引号括起来的字符序列,例如,“Hello,world!\n”。本题答案:【正确】30、【判断题】字符可以是字符集中任意字符。但数字被定义为字符型之后就不能参与数值运算。本题答案:【错误】31、【判断题】用const修饰的标识符称为符号常量因为符号常量同样需要系统为其分配内存,所以又称为const变量符号常量在使用之前一定要先进行声明。本题答案:【正确】32、【判断题】C++语言允许对整型变量赋以字符值,也允许对字符变量赋以整型值。在输出时,允许把字符变量按整型量输出,也允许把整型量按字符量输出。本题答案:【正确】33、【判断题】C++语言标识符是以字母或下划线开头的,由字母,数字和下划线组成的字符序列。本题答案:【正确】34、【判断题】一个赋值表达式中使用多个赋值运算符可实现多个变量赋值的功能,如表达式(x=y=z=2)与操作序列(z=2;y=z;x=y;)是等价的。本题答案:【正确】35、【判断题】变量是在程序的执行过程中其值可以改变的量。变量有数据类型和初值。变量在使用之前必须首先声明其类型和名称。本题答案:【正确】36、【判断题】字符值是以ASCII码的形式存放在变量的内存单元之中的。如'x'的十进制ASCII码是120,'y'的十进制ASCII码是121。本题答案:【正确】37、【判断题】字符常量只能用单引号括起来,不能用双引号或其它括号。本题答案:【正确】38、【判断题】void是无值,而不是0,因为0也是一个值。本题答案:【正确】39、【判断题】声明语句中使用的符号“=”称为初始化符,它不是赋值运算符。本题答案:【正确】40、【判断题】条件表达式的形式为:表达式1?表达式2:表达式3其含义为若表达式1的值为“真”,则条件表达式取表达式2的值;否则取表达式3的值。本题答案:【正确】第三章控制结构单元作业第三章控制结构单元测验1、【单选题】k为整型,以下while循环体中的语句执行()。k=2;while(k=0){coutk;k--;cout;}本题答案:【0次】2、【单选题】在下列选项中,会构成死循环的是()。本题答案:【for(;;);】3、【单选题】为了避免在嵌套的条件语句if…else中产生二义性,C++规定else子句总是与()配对。本题答案:【其之前最近且尚未配对的if语句】4、【单选题】C++中循环语句while和do…while的主要区别是()。本题答案:【do…while的循环体至少无条件执行一次】5、【单选题】对于省略了循环控制表达式2的循环语句“for(表达式1;;表达式3)”,可理解为()。本题答案:【for(表达式1;true;表达式3)】6、【单选题】执行语句“for(i=1;i5;i++)couti;”循环执行()次?本题答案:【4】7、【单选题】面关于for循环语句的叙述中,正确的是()。本题答案:【for循环的循环体可以包含多条语句,但必须用大括号括起来】8、【单选题】若有以下程序段:for(m=1;m=100;m++){ciny;if(y0)continue;coutm;}则下面正确的说法是()。本题答案:【最多输出100个非负整数】9、【单选题】以下程序段中的do…while循环()。m=-1;do{m=m*m;}while(!m);本题答案:【执行一次】10、【单选题】语句“while(!x)...”等价于()。本题答案:【while(x==0)…】11、【单选题】设有程序段intk=10;while(k=0)k=k-1;则下面描述中正确的是()。本题答案:【循环体语句一次也不执行】12、【单选题】若给定条件表达式(M)?(a++):(a--),则其中表达式M()。本题答案:【和(M!=0)等价】13、【单选题】下列描述正确的是()。本题答案:【如果至少有一个操作数为true,则包含“||”运算符的表达式为true】14、【单选题】以下for语句中不是死循环的是()。本题答案:【for(inti=0;i1;++i);】15、【单选题】有以下程序#includeiostreamusingnamespacestd;intmain(){inta=5,b=0,c=0;if(a=b+c)cout″***″endl;elsecout″$$$″endl;return0;}下列选项叙述正确的是()。本题答案:【输出$$$】16、【判断题】switch结构case语句后的多个语句必须放在花括号中。本题答案:【错误】17、【判断题】要在if选择结构体中包括多条语句,就要把这些语句放在花括号中。复合语句可以放在程序中出现单个语句的任何地方。本题答案:【正确】18、【判断题】空语句就是在正常语句出现的地方放一个分号(;),表示不采取任何操作。本题答案:【正确】19、【判断题】do/while重复结构执行循环体之后再测试循环条件,因此,do/while结构至少执行循环体一次。本题答案:【正确】20、【判断题】break语句在while、for和do/while结构中执行时,将使程序立即退出这些结构。本题答案:【正确】21、【判断题】每个case面的语句之后必须要包括一个break语句。几个case可以不执行相同语句。本题答案:【错误】22、【判断题】continue语句用于循环语句中,并不终止本层循环,而只是绕过本次循环。本题答案:【正确】23、【判断题】如果表达式xy为true或ab为true,则表达式(xyab)为true。本题答案:【错误】24、【判断题】for重复结构处理计数器控制循环的所有细节。for结构的一般格式如下:for(expression1,expression2,expression3)statement其中expression1初始化循环控制变量,expression2是循环条件,expression3递增控制变量。本题答案:【错误】25、【判断题】goto语句只能从循环体内跳到循环体外,不能从循环体外跳到循环体内。本题答案:【错误】第四章数组与字符串单元作业第四章数组与字符串单元测验1、【单选题】以下对一维数组a的正确定义是()。本题答案:【chara[]={‘a’,‘b’,‘c’};】2、【单选题】下面不能够正确判断字符串s是空串的是()。本题答案:【if(s==‘\0’)】3、【单选题】下面关于C++字符数组的叙述中,错误的是()。本题答案:【可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值】4、【单选题】判断字符串s1是否大于字符串s2,应当使用()。本题答案:【if(strcmp(s1,s2)0)】5、【单选题】若有定义:charstrl[10],str2[]=student;以下能把str2中的字符串赋给strl的语句是()。本题答案:【for(inti=0;i=strlen(str2);i++)str1[i]=str2[i];】6、【单选题】若有定义inta[3][3]={{1,2},{5},{2,4,8}};初始值5是数组a存储在内存中的第()个元素。本题答案:【4】7、【单选题】若有定义:charstrl[20]=agood,str2[]=student;以下能将字符串str1变为agoodstudent的语句是()。本题答案:【strcat(str1,str2);】8、【单选题】若有以下说明,则数值为4的表达式是()。inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc=’a’,d,g;本题答案:【a['d'-c]】9、【单选题】下列语句中,正确的是()。本题答案:【chara[][3]={a,1};】10、【单选题】字符串的长度是()。本题答案:【串中所含字符的个数】11、【单选题】下面关于数组的初绐化正确的是()。本题答案:【charstr[]={'a','b','c'};】12、【单选题】设有数组定义:chararray[]=China;,则数组array所占的空间为()。本题答案:【6个字节】13、【单选题】对以下说明语句的正确理解是()。inta[10]={6,7,8,9,10};本题答案:【将5个初值依次赋给a[0]至a[4]】14、【单选题】若有说明语句:inta[][3]={1,2,3,4,5,6,7,8};,则数组a的行数为()。本题答案:【3】15、【单选题】若有定义inta[5]={0,1,3,4,5};,以下正确的数组元素引用是()。本题答案:【a[a[4]-1]】16、【判断题】初始化语句inta[3][4]={{1,2},{0},{4,6,8,10}};执行后,a[2][1]得到的初值是6。本题答案:【正确】17、【判断题】说明语句inta[7]={5,6,7};由于数组长度与初值个数不同,故该语句不正确。本题答案:【错误】18、【判断题】doublea[5][]是对二维数组a的正确说明。本题答案:【错误】19、【判断题】字符数组可以存放字符串。本题答案:【正确】20、【判断题】C++中允许对数组的大小作动态定义,即可用变量定义数组的大小。本题答案:【错误】21、【判断题】字符数组不要求它的最后一个字符为'\0',甚至可以不包含'\0'。本题答案:【正确】22、【判断题】在对全部数组元素赋初值时,可以不指定数组长度。本题答案:【错误】23、【判断题】数组定义inta[10];表示数组名为a,此数组可以存放10个整型元素。本题答案:【正确】24、【判断题】charc[]={abook};与charc[]=abook;等价。本题答案:【正确】25、【判断题】设已有说明:charc1[10],c2[10];程序片段:c1={book};c2=c1;是合法的。本题答案:【错误】26、【判断题】字符数组初始化如:charaStr[]={12345};不可省略花括弧,简单地写为charaStr[]=12345;本题答案:【错误】27、【判断题】对数组元素赋初值称为数组的初始化,例如:inta[10];a={1,3,5,6,7};本题答案:【错误】28、【判断题】如果数组的元素类型是字符型,则此数组就是字符数组。字符数组的每个元素只能存放一个字符,存放的是字符的ASCII代码。本题答案:【正确】29、【判断题】C++中数组的起始下标为0,最大下标值比定义数组时的常量表达式小1。本题答案:【正确】第五章指针单元作业第五章指针单元测验1、【单选题】在基本数据类型相同的两个指针变量之间,不能进行的运算是()。本题答案:【+】2、【单选题】以下程序段的运行结果是()。charx[5]={'a','b','\0','c','\0'};coutx;本题答案:【ab】3、【单选题】在一维数组中,数组名表示()。本题答案:【数组第1个元素的地址】4、【单选题】若有定义:int*p[3];,则以下表述中正确的是()。本题答案:【p是一个有3个元素的指针数组,每个元素是一个int型指针】5、【单选题】若有定义:intk=1,a[10]={10,20,30,40};int*p1=a,*p2=a[2];则下列不能正确执行的语句是()。本题答案:【p2=k;】6、【单选题】设已有定义:char*st=howareyou;下列程序段中正确的是()。本题答案:【chara[11],*p;strcpy(p=a+1,st[4]);】7、【单选题】若有定义:intc[5],*p=c;,则以下正确的表达式是()。本题答案:【c[0]】8、【单选题】以下关于new和delete运算符的叙述中,错误的说法是()。本题答案:【由new运算符分配的内存空间,当程序执行结束时系统会自动收回】9、【单选题】以下字符串赋值的表达式中,不能正确赋值的是()。本题答案:【chars[10];s=china;】10、【单选题】能进行++和--运算的数据类型是()。本题答案:【其它三项均可】11、【单选题】以下正确的程序段是()。本题答案:【charstr[10]=,*st=abcde;strcat(str,st);】12、【单选题】下面判断正确的是()。本题答案:【char*s=china;等价于char*s;s=china;】13、【单选题】以下程序段的运行结果是()。charb[]=Basic,*p;for(p=b;pb+5;p++)coutp',';本题答案:【Basic,asic,sic,ic,c,】14、【单选题】以下程序段的输出结果为()。chara[]=language,*ptr=a;while(*ptr){cout(char)(*ptr-32);ptr++;}本题答案:【LANGUAGE】15、【单选题】执行以下程序段后,y的值是()。inta[]={1,3,5,7,9};intx=0,y=1,*ptr;ptr=a[1];while(!x){y+=*(ptr+x);x++;}本题答案:【4】16、【单选题】以下语句不正确的是()。本题答案:【chara[6],*p;p=a=test;】17、【单选题】以下程序段的输出结果为()。inta,m=2,k=1,*p=k;a=*p==m;couta;本题答案:【0】18、【判断题】指针必须先赋值后使用。本题答案:【正确】19、【判断题】当指针p指向一维数组a的首址后,由于p[i]和a[i]都能引用数组元素,所以这里p和a是等价的。本题答案:【错误】20、【判断题】int*p表示定义了一个指向int类型数据的指针变量p。本题答案:【正确】21、【判断题】若有定义inta[4],*p=a,则p++后p指向数组a所占内存的第2个字节。本题答案:【错误】22、【判断题】相同类型的指针可以进行加减运算。本题答案:【错误】23、【判断题】取地址运算和取值运算*互为逆运算。本题答案:【正确】24、【判断题】指针变量和许多变量一样可以进行四则运算。本题答案:【错误】25、【判断题】指针p指向数组元素a[2],若要其指向a[4],执行p=p*2即可。本题答案:【错误】26、【判断题】数组名可以代表该数组的起始地址。本题答案:【正确】27、【判断题】因为字符数组和字符指针变量都能实现字符串的存储和运算,所以可以用如下方式对字符数组赋值:chars[15],*p=s=Iloveyou!;本题答案:【错误】28、【判断题】p是一个指针变量,(*p)++与*p++是等价的。本题答案:【错误】29、【判断题】一个数组,其元素均为指针类型数据,称为指针数组。也就是说,指针数组中的每一个元素都相当于一个指针变量。本题答案:【正确】30、【判断题】若有定义:intx,*p=x;,则p是指针变量,*p是p所指向的变量。本题答案:【正确】31、【判断题】C++中允许对数组的大小作动态定义,即可用变量定义数组的大小。本题答案:【错误】32、【判断题】指针前用*运算来取出变量的内存地址。本题答案:【错误】33、【判断题】可以用一个空指针赋给某个指针。本题答案:【正确】34、【判断题】指针的类型必须与其指向的变量的类型相同。本题答案:【正确】35、【判断题】动态分配的内存空间不能被初始化。本题答案:【错误】第六章函数单元作业第六章函数单元测验1、【单选题】下列叙述错误的是()。本题答案:【调用函数必须在一条独立的语句中完成】2、【单选题】在函数定义前加上关键字”inline”,表示该函数被定义为()。本题答案:【内联函数】3、【单选题】数定义为Fun(intk),变量定义n=100,则下面调用正确的是()。本题答案:【Fun(n)】4、【单选题】必须用一对大括号括起来的程序段是()。本题答案:【函数的函数体】5、【单选题】在函数的返回值类型与返回值表达式类型的描述中,错误的是()。本题答案:【函数返回值得类型就是返回值表达式的类型】6、【单选题】函数的定义格式中,下面各组成部分中,()是可以省略的。本题答案:【函数参数】7、【单选题】下面叙述中错误的是()。本题答案:【调用函数必须在一条独立的语句中完成】8、【单选题】非数组、指针或引用型变量做实参时,它和对应形参之间的数据传递方式是()。本题答案:【单向值传递】9、【单选题】若用数组名作为函数调用的实参.则传递给形参的是()。本题答案:【数组的首地址】10、【单选题】若使用一维数组名作函数实参,则下面正确的说法是()。本题答案:【必须在主调函数中说明数组的大小】11、【单选题】以下程序有语法性错误,有关错误原因的正确说法是()intmain(){inta=5,k;voidprt_char();……k=prt_char();……}本题答案:【函数说明和函数调用语句之间有矛盾】12、【单选题】正确的函数原型形式为()。本题答案:【voidfun(void);】13、【单选题】有函数原型voidfun4(int);下面选项中,正确的调用是()。本题答案:【intb=100;fun4(b);】14、【单选题】以下叙述中正确的是()。本题答案:【构成C++程序的基本单位是函数】15、【多选题】下面判断是否构成重载函数的条件中,错误的判断条件是()。本题答案:【参数顺序不同#函数返回值不同】16、【判断题】主函数可以调用除自己以外的任何函数,子函数可以调用除主函数外的任何函数,包括它自己。本题答案:【正确】17、【判断题】主函数中定义的变量可以在其他函数中使用,主函数可以使用其他函数中定义的变量。本题答案:【错误】18、【判断题】不同的函数中不能使用相同的变量名。本题答案:【错误】19、【判断题】函数的某个参数有默认值时,其后面的参数都必须有默认值。本题答案:【正确】20、【判断题】模板函数的真正代码是在运行函数时产生。本题答案:【错误】21、【判断题】voidf(inta,charb,floatc=1)与voidf(intm,charn)互为重载函数。本题答案:【错误】22、【判断题】内联函数可以减少函数的调用,提高程序的运行速度。本题答案:【正确】23、【判断题】函数执行过程中通过return语句将函数值返回,当一个函数不需要返回值,需要使用void作为类型名。本题答案:【正确】24、【判断题】C++中,函数允许嵌套定义,允许嵌套调用。本题答案:【错误】25、【判断题】各个函数在程序中定义的顺序是一定的,它们的顺序影响程序运行时的执行顺序和程序运行结果。本题答案:【错误】第七章结构体和共用体单元测验1、【单选题】设有如下定义,若要通过px引用rec中的x域,正确的语句()。structaa{intx;floaty;}rec,*px;px=rec;本题答案:【px-x;】2、【单选题】根据下面的定义,能输出字符串Li的语句是()。structperson{charname[10];intage;};personstu[10]={Zhang,18,Li,17,Ma,18,Huang,18};本题答案:【coutstu[1].nameendl;】3、【单选题】以下程序的运行结果是()。#includeiostreamusingnamespacestd;intmain(){structdate{inty,m,d;}today;coutsizeof(today);}本题答案:【12】4、【单选题】设有以下说明语句,则下面的叙述不正确的是()。structabc{intm;floatn;}stype;本题答案:【stype是用户定义的结构体类型名】5、【单选题】已知学生记录描述如下:下面对结构体成员computer的赋值方式正确是()。structstudent{intnum;charname[8];struct{floatmath;floatengl;floatcomputer;}mark;}std;本题答案:【puter=84;】6、【单选题】有如下定义structperson{charname[9];intage;};personClass[10]={Johu,17,Paul,19,Mary,18,Adam,16};根据上述定义,能输出字母M的语句是()。本题答案:【coutClass[2].name[0];】7、【单选题】有如下定义:structdate{intyear,month,day;};structworklist{charname[20];charsex;datebirthday;}person;对结构体变量person的出生年份进行赋值时,下面正确的赋值语句是()。本题答案:【person.birthday.year=1958】8、【单选题】C++语言结构体类型变量在程序执行期间()。本题答案:【所有成员一直驻留在内存中】9、【单选题】下面关于结构体概念的叙述中,正确的说法是()本题答案:【不同类型数据的集合称为结构体】10、【单选题】若有以下说明和语句,则以下引用方式中不正确的是()。structworker{intno;char*name;}work,*p=work;本题答案:【work-no】11、【判断题】共用体变量占据的内存空间大小是所有成员占据的空间大小之和。本题答案:【错误】12、【判断题】结构体类型的成员名可以与结构体以外的变量名相同。本题答案:【正确】13、【判断题】当在程序中定义了一个结构体类型,则将为此类型分配存储空间。本题答案:【错误】14、【判断题】结构体变量占据的内存空间大小是所有成员占据的空间大小之和。本题答案:【正确】15、【判断题】结构体的定义可以嵌套一个共用体。本题答案:【正确】16、【判断题】结构体类型必须有类型名。本题答案:【错误】17、【判断题】C++语言结构体类型变量在程序执行期间,所有成员驻留在内存中。本题答案:【正确】18、【判断题】允许用户将不同类型的数据组合成一个有机的整体,这些数据互相联系;这种数据结构称为结构体。本题答案:【正确】19、【判断题】结构体变量可以作为一个整体进行输入输出。本题答案:【错误】第八章面向对象程序设计单元测验1、【单选题】以下选项中不是面向对象程序设计所具有的特性的是()。本题答案:【模板】2、【单选题】在C++类中定义的成员,其默认访问权限为()。本题答案:【private】3、【单选题】下列关于类和对象的叙述中,错误的是()。本题答案:【一个类只能有一个对象】4、【单选题】以下各类函数中,()不是类的成员函数。本题答案:【友元函数】5、【单选题】对于任意一个类,析构函数的个数最多为()。本题答案:【1】6、【单选题】在一个类中,可以对一个操作符进行()重载。本题答案:【多种】7、【单选题】以下关于运算符重载的叙述中,正确的是()。本题答案:【有的运算,其运算符只能作为友元函数重载】8、【单选题】若可以在类外用p.a的形式访问派生类对象p的基类成员a,则a是()。本题答案:【公有继承的公有成员】9、【单选题】C++中声明常量的关键字是()。本题答案:【const】10、【单选题】在表达式x+y*2中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符,则operator+和operator*分别有()个参数。本题答案:【1、2】11、【单选题】下列程序划线处应填入的正确语句是()。classBase{public:voidfun(){coutBase::funendl;}};classDerived:publicBase{public:voidfun(){_____________//显示调用基类的函数fun()coutDerived::funendl;}};本题答案:【Base::fun();】12、【单选题】保护继承时,基类的()在派生类中成为保护成员,不能通过派生类的对象直接访问。本题答案:【公有成员和保护成员】13、【单选题】类成员的访问权限中,()只能被本类的成员函数和其友元函数访问。本题答案:【private】14、【单选题】关于构造函数,下列说法不正确的是()。本题答案:【构造函数有且只有一个】15、【单选题】在公有继承的情况下,基类非私有成员在派生类中的访问权限()。本题答案:【保持不变】16、【单选题】类A中的一个成员函数原型为:voidSet(Aa);其中Aa的含义为()。本题答案:【a是类A对象的引用,用来作函数Set的形参】17、【单选题】若一个类拥有多个构造函数,则这些构造函数函数之间为()。本题答案:【重载关系】18、【单选题】以下对派生类的描述中,错误的是()。本题答案:【从派生类中继承的基类成员的访问权限到派生类中保持不变】19、【判断题】面向对象程序设计有四个主要特点,即抽象、封装、继承和多态。本题答案:【正确】20、【判断题】非成员函数应声明为类的友元函数才能访问这个类的private成员。本题答案:【正确】21、【判断题】派生类中的成员不能直接访问基类中的私有成员。本题答案:【正确】22、【判断题】运算符重载函数必须是类的成员函数。本题答案:【错误】23、【判断题】C++类的组成包括数据成员和成员函数,友元不是该类的成员函数。本题答案:【正确】24、【判断题】友元函数是用关键字friend修饰的成员函数。本题答案:【错误】25、【判断题】析构函数是一种函数体为空的成员函数。本题答案:【错误】26、【判断题】析构函数和构造函数都可以重载。本题答案:【错误】27、【判断题】派生类的构造函数一般有3项工作要完成:首先基类初始化,其次成员对象初始化,最后执行派生类构造函数体。本题答案:【正确】28、【判断题】若派生类执行无参构造函数,则其基类必须定义有无参构造函数才能正常执行。本题答案:【错误】29、【判断题】保护派生时,基类的公有成员成为派生类的公有成员;保护成员成为派生类的保护成员,私有成员成为派生类的保护成员。本题答案:【错误】30、【判断题】创建对象时,需要显式调用类的构造函数对其进行初始化。本题答案:【错误】31、【判断题】所谓私有成员是指只有类中的成员函数才能直接使用它们,任何类以外的函数对它们的访问都是非法的。本题答案:【错误】32、【判断题】对象数组的元素可以是不同类的对象。本题答案:【错误】33、【判断题】由new运算符创建的动态对象,程序结束时系统会自动执行其析构函数。本题答案:【错误】《C++语言程序设计》课程考试--客观题1、【单选题】以下语句中,不包含C++关键字的是()。本题答案:【x=sqrt(2);】2、【单选题】C++中运算对象必须是整型的运算符是()。本题答案:【%=】3、【单选题】有如下程序段:intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}cout“a=”a“,b=”b;该程序段的输出结果是()。本题答案:【a=2,b=1】4、【单选题】下列数据中,不合法的实型数据的是()。本题答案:【2.1e3.5】5、【单选题】在下列选项中,没有构成死循环的是()。本题答案:【ints=36;while(s)--s;】6、【单选题】若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。本题答案:【函数调用可以出现在赋值运算符的左侧或右侧】7、【单选题】以下函数的功能是()。fun(char*p2,char*p1){while((*p2=*p1)!='\0'){p1++;p2++;}}本题答案:【将p1所指字符串复制到p2所指内存空间】8、【单选题】在C++中,各种类型数据在内存中所占用的字节数()。本题答案:【由编译器决定】9、【单选题】已有定义:chars[]="china";char*p;p=s;则下列叙述正确的是()。本题答案:【*p与s[0]相等】10、【单选题】以下函数的返回值是()。fun(int*p){return*p;}本题答案:【形参p所指存储单元中的值】11、【单选题】以下叙述中正确的是()。本题答案:【静态(static)类别变量的生存期贯穿于整个程序的运行期间】12、【单选题】以下关于类概念的描述中,错误的是()。本题答案:【类就是C语言中的结构体类型】13、【单选题】以下有关析构函数的说法不正确的是()。本题答案:【析构函数和构造函数一样可以有形参】14、【单选题】关于拷贝构造函数,以下描述不正确的是()。本题答案:【要定义拷贝构造函数,必须指定返回类型】15、【单选题】一个类的友元函数能够访问该类的本题答案:【所有成员】16、【单选题】下列关于this指针的说法正确的是本题答案:【在类的成员函数中this指针指向调用该函数的对象】17、【单选题】运算符重载是对已有的运算符赋予多重含义,以下说法正确的是()。本题答案:【只能重载C++中已经有的运算符,不能定义新运算符】18、【单选题】假定AA为一个类,a为该类的私有数据成员,GetValue()为该类的公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为()。本题答案:【x.GetValue()】19、【单选题】在C++中,函数原型不能标识()。本题答案:【函数的功能】20、【单选题】若变量已正确定义并赋值,以下符合C++语法的表达式是()。本题答案:【a=b=c+2】21、【单选题】在C++中,数字029是一个()。本题答案:【非法常量】22、【单选题】若有intk=1,a[10]={10,20,30,40};int*p1=a,*p2=a[2];则不能正确执行的语句是()。本题答案:【p2=k;】23、【单选题】设已有定义:char*st="howareyou";下列程序段中正确的是()。本题答案:【chara[11],*p;strcpy(p=a+1,st[4]);】24、【单选题】有以下程序段intm[][3]={1,4,7,2,5,8,3,6,9},i,j,k=2;for(i=0;i3;i++)coutm[k][i]);执行后输出结果是()。本题答案:【369】25、【单选题】若使用一维数组名作函数实参,则下面正确的说法是()。本题答案:【必须在主调函数中说明数组的大小】26、【单选题】若有声明语句chars1[10]={0},s2[10]="books";则能将字符串“books”赋给数组s1保存的语句是()。本题答案:【strcat(s1,s2);】27、【单选题】以下程序段的输出结果是()。intx=10,y=10;coutx--","--yendl;本题答案:【10,9】28、【单选题】以下函数的功能是()。fun(char*s1,char*s2){inti=0;while(s1[i]==s2[i]s2[i]!='\0')i++;return(sl[i]=='\0's2[i]=='\0');}本题答案:【比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0】29、【单选题】若有以下程序段,则下面正确的说法是()。for(m=1;m=100;m++){ciny;if(y0)continue;coutm;}本题答案:【最多输出100个非负整数】30、【单选题】下列关于C++类的描述中错误的是()。本题答案:【类与类之间均是平等的关系】31、【单选题】通过运算符重载,可以改变运算符原有的()。本题答案:【操作数类型】32、【单选题】下列哪一种情况不会调用拷贝构造函数()。本题答案:【将类的一个对象赋值给该类的另一个对象时】33、【单选题】类的友员函数的作用是()。本题答案:【提高程序的运行效率】34、【单选题】已知有类定义:classPoint{private:intx,y;public:voidsetPoint(intx0,inty0){x=x0;y=y0;}};以下说法中错误的是()。本题答案:【由Point定义的对象,所需存储空间是数据成员x和y以及成员函数setPoint所占存储空间之和】35、【单选题】有如下类声明:classXA{private:intx;public:XA(intn){x=n;}};classXB:publicXA{private:inty;public:XB(inta,intb);};在构造函数XB的下列定义中,正确的是()。本题答案:【XB::XB(inta,intb):XA(a),y(b){}】

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论