1、计算机二级c+上机考试题库所属语言:C+试卷总分:200分共有题型:5种一、填空共20题(共计20分)第1题(1.0分)假设变量a,b均为整型,表达式(a=5,b=2,ab?a+:b+,a+b)的值是【1】.答案:=(答案1)=8第2题(1.0分)若有以下数组a,数组元素:a0a9,其值为941282107513该数组的元素中,数值最大的元素的下标值是【1】.答案:=(答案1)=2第3题(1.0分)下面程序段的输出结果是【1】.inta=12;a=a&0377;pritnf(%on,a);答案:=(答案1)=14第4题(1.0分)若输入字符串:abcde,则以下while循环体将执行【1】次.
2、While(ch=getchar()=e)printf(*);答案:=(答案1)=0第5题(1.0分)将数组a的首地址赋给指针变量p的语句是【1】.答案:=(答案1)=p=a;第6题(1.0分)C语言把文件看作是一个【1】的序列.答案:=(答案1)=字符=或=字节第7题(1.0分)静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是在【2】时进行的.答案:=(答案1)=编译=(答案2)=函数调用第8题(1.0分)若有定义:inta32=2,4,6,8,10,12;,则*(a1+1)的值是【1】.答案:=(答案1)=8第9题(1.0分)C语言中,数组名是一个不可变的【1】量,不能对
3、它进行加减和赋值运算.答案:=(答案1)=地址第10题(1.0分)intx=2;z=x+-1;则x的值为【1】.答案:=(答案1)=3第11题(1.0分)若所用变量都已正确定义,请填写以下程序段的输出结果【1】.for(i=1;i=5;i+);printf(OKn);答案:=(答案1)=OK第12题(1.0分)feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为【1】,否则为【2】.答案:=(答案1)=非0值=(答案2)=0第13题(1.0分)如果函数不要求带回值,可用【1】来定义函数返回值为空.答案:=(答案1)=void第14题(1.0分)调用fopen函数打开一文本文件,
4、在使用方式这一项中,为输出而打开需填入【1】.答案:=(答案1)=w=或=w+第15题(1.0分)顺序结构存储方法是把逻辑上相邻的结点存储在物理位置【1】的存储单元中。答案:=(答案1)=相邻第16题(1.0分)一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的【1】。答案:=(答案1)=可重用性第17题(1.0分)C+中封装性、继承性和【1】是面向对象程序设计的三个主要性质。答案:=(答案1)=多态性第18题(1.0分)C+语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【1】方式。答案:=(答案1)=传地址第19题(1.0
5、分)设i,j,k均为int型变量,则执行完for(i=0,j=10;j+y;x=i+)i=x;B:for(;x+=i);C:while(1)x+;D:for(i=10;i-)sum+=i;答案:A第13题(1.0分)利用fseek函数可以实现的操作是()。A:改变文件的位置指针B:文件的顺序读写C:文件的随机读写D:以上答案均正确答案:D第14题(1.0分)C语言中while和do-while循环的主要区别是()。A:do-while的循环体至少无条件执行一次B:while的循环控制条件比do-while的循环控制条件更严格C:do-while允许从外部转到循环体内D:do-while的循环体
6、不能是复合语句答案:A第15题(1.0分)sizeof(float)是()。A:一种函数调用B:一个不合法的表达式C:一个整型表达式D:一个浮点表达式答案:C第16题(1.0分)以下程序的运行结果是()。main()intn;for(n=1;nc)b=a;a=c;c=b;则c的值为()。A:1B:2C:3D:不一定答案:B第36题(1.0分)对for(表达式1;表达式3)可理解为()。A:for(表达式1;0;表达式3)B:for(表达式1;1;表达式3)C:for(表达式1;表达式1;表达式3)D:for(表达式1;表达式3;表达式3)答案:B第37题(1.0分)a,b为整型变量,二者均不为
7、0,以下关系表达式中恒成立的是()。A:a*b/a*b=1B:a/b*b/a=1C:a/b*b+a%b=aD:a/b*b=a答案:C第38题(1.0分)chara1=abc,a280=1234;将a1串连接到a2串后面的语句是()。A:strcat(a2,a1);B:strcpy(a2,a1);C:strcat(a1,a2);D:strcpy(a1,a2);答案:A第39题(1.0分)设char*s=ta017bc;则指针变量s指向的字符串所占的字节数是()。A:9B:5C:6D:7答案:C第40题(1.0分)以下描述中正确的是()。A:由于do-while循环中循环体语句只能是一条可执行语句
8、,所以循环体内不能使用复合语句B:do-while循环由do开始,用while结束,在while(表达式)后面不能写分号C:在do-while循环体中,一定要有能使while后面表达式的值变为零(假)的操作D:do-while循环中,根据情况可以省略while答案:C第41题(1.0分)对于void类型函数,调用时不可作为()。A:自定义函数体中的语句B:循环体里的语句C:if语句的成分语句D:表达式答案:D第42题(1.0分)下列语句中,不正确的是()。A:staticchara2=1,2;B:staticinta2=1,2;C:staticchara2=1,2,3;D:staticchar
9、a2=1;答案:C第43题(1.0分)设有定义intx;floaty;,则10+x+y值的数据类型是A:intB:doubleC:floatD:不确定答案:C第44题(1.0分)在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是A:友元函数B:虚函数C:构造函数D:析构函数答案:C第45题(1.0分)下面对静态数据成员的描述中,正确的是A:静态数据成员可以在类体内进行初始化B:静态数据成员不可以被类的对象调用C:静态数据成员不能受private控制符的作用D:静态数据成员可以直接用类名调用答案:D第46题(1.0分)下面对友元函数描述正确的是A:友元函
10、数的实现必须在类的内部定义B:友元函数是类的成员函数C:友元函数破坏了类的封装性和隐藏性D:友元函数不能访问类的私有成员答案:C第47题(1.0分)下面叙述不正确的是A:基类的保护成员在派生类中仍然是保护成员B:基类的保护成员在公有派生类中仍然是保护成员C:基类的保护成员在私有派生类中是私有成员D:对基类成员的访问必须是无二义性答案:A第48题(1.0分)在C+语言程序中,对象之间的相互通信通过A:继承实现B:调用成员函数实现C:封装实现D:函数重载实现答案:B第49题(1.0分)下列关于虚基类的描述中,错误的是A:设置虚基类的目的是为了消除二义性B:虚基类的构造函数在非虚基类之后调用C:若同
11、一层包含多个虚基类,这些基类的构造函数按照它们的次序调用D:若虚基类由非基类派生而来,则仍然先调用基类构造函数,再用派生类的构造函数答案:B第50题(1.0分)下列运算符中,在C+语言中不能重载的是A:*B:=C:D:/答案:C第51题(1.0分)继承机制的作用是A:信息隐藏B:数据封装C:定义新类D:数据抽象答案:C第52题(1.0分)C+语言对C语言进行了很多改进,C+语言相对于C语言的最根本的变化是A:增加了一些新的运算符B:允许函数重载,并允许设置缺省参数C:规定函数说明符必须用原型D:引进了类和对象的概念答案:D第53题(1.0分)若x、i、j、k都是int型变量,则计算表达式x=(
12、i=4,j=16,k=32)后,x的值为().A:4B:16C:32D:52答案:C第54题(1.0分)下列关于开关语句的描述中,错误的是().A:开关语句中,case子句的个数是不受限制的B:开关语句中,case子句的语句序列中一定要有break语句C:开关语句中,default子句可以省略D:开关语句中,右花括号具有退出开关语句的功能答案:B第55题(1.0分)下列while循环语句的循环次数是().while(inti=0)i-;A:0B:1C:2D:无限答案:A第56题(1.0分)下列运算符中优先级最高的是().A:?:B:%C:-=D:&答案:B第57题(1.0分)采用函数重载的目的
13、在于().A:实现共享B:减少空间C:使用方便,提高可靠性D:提高速度答案:C第58题(1.0分)使用磁盘文件,要包含_头文件A:iostreamB:fstreamC:iomanipD:complex答案:B第59题(1.0分)()是析构函数的特征.A:一个类中只能定义一个析构函数B:析构函数与类名不同C:析构函数的定义只能在类体内D:析构函数可以有一个或多个参数答案:A第60题(1.0分)下列关于字符数组的描述中,错误的是().A:字符数组中的每一个元素都是字符B:字符数组可以使用初始值表进行初始化C:字符数组可以存放字符串D:字符数组就是字符串答案:D四、程序填空共6题(共计40分)第1题(5.0分)/*-【程序填空】-功能:产生10个30,90区间上的随机整数,然后对其用选择法进行由小到大的排序。-*/#includemain()/*SP
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1