全国信息技术应用考试

若有定义如下classA{intx,x1;intf(){inta;…}intg(){inty;…}},则不正确的赋值为()A、在f()中a=xB、在f()中x=aC、在f()中x=x1D、在g()中y=a

题目

若有定义如下classA{intx,x1;intf(){inta;…}intg(){inty;…}},则不正确的赋值为()

  • A、在f()中a=x
  • B、在f()中x=a
  • C、在f()中x=x1
  • D、在g()中y=a
参考答案和解析
正确答案:D
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义语句:inta=3,b=2,c=1;,则表达式b<b?a:b的值是______。


正确答案:2
2

第2题:

若有定义classA{intx,y;staticfloatf(inta){}floatg(intx1,intx2){}}及A a1=newA();则下列用法中合法的是()。

A.g(3,2)

B.a1.g(2,5)

C.a1.f(4)

D.f(3)


正确答案:ABD

第3题:

若有定义:inta;则scanf(“%d“,a);可以给变量a赋值。()

此题为判断题(对,错)。


参考答案:错误

第4题:

若有如下变量定义和函数调用语句: inta=5; fun(&A) ; 则执行下面函数后正确的输出结果是( )。 void fun(int*x) { cout<<++*x<<endl; }

A.3

B.4

C.5

D.6


正确答案:D
解析: fun函数中的x参数为整型指针变量。调用fun函数,&a是取a的地址,即将实际参数a的地址传递。函数fun中的*x是变量x所指的存储单元即值5。*运算符的等级高于++,所以先取值5然后加1输出,即为6。

第5题:

InwhichtwocasesdoesthecompilersupplyadefaultconstructorforclassA?()

A.classA{}

B.classA{publicA(){}}

C.classA{publicA(intx){}}

D.classZ{}classAextendsZ{voidA(){}}


参考答案:A, D

第6题:

若有定义inta=12;则表达式a+=a-=a*=a的值是-144。()


正确答案:×

第7题:

Whatproducesacompilererror?()

A.classA{publicA(intx){}}

B.classA{}classBextendsA{B(){}}

C.classA{A(){}}classB{publicB(){}}

D.classZ{publicZ(int){}}classAextendsZ{}


参考答案:D

第8题:

若有以下调用语句,main(){…inta[50],n;…fun(n,}则不正确的fun函数的首部是()

A、voidfun(intm,intx[])

B、voidfun(ints,inth[41])

C、voidfun(intp,int*s)

D、voidfun(intn,inta)


参考答案:C

第9题:

有如下类声明: classXA{ intx: public: XA(intn){x=n;} }; classXB:publicXA{ inty; oublic: XB(inta,intb); }; 在构造函数XB的下列定义中,正确的是( )。

A.XB::XB(inta,intb):x(a),y(b){}

B.XB::XB(inta,intb):XA(a),y(b){}

C.XB::XB(inta,intb):x(a),XB(b){}

D.XB::XB(inta,intb):XA(a),XB(b){}


正确答案:B
B。【解析】C++中派生类构造函数的一般语法规则为<派生类名>::<派生类名>(<参数表>):<基类1>(<参数表1>),…,<基类名n>(<参数表n>),<子对象l>(<子对象参数表1>,…<子对象m>(<子对象参数表m>){<派生类新增成的初始化语句>;}。

第10题:

若有定义:“inta=4,b=5;floatx=3.4,y=2.1;”,则下列表达式的值为( )。 A.5.5B.55

若有定义:“inta=4,b=5;floatx=3.4,y=2.1;”,则下列表达式的值为( )。

A.5.5

B.55

C.5.500000

D.55.00000


正确答案:C
在计算(float)(a+b)/2时,由于通过强制类型转换将(a+b)转换成了float型,所以应先将2转换成float型,再进行计算,得4.500000。在计算(int)x%(int)y时,先将x和y通过强制类型转换成int型,再进行求余运算,结果为1。又因为4.500000是float型,所以将1和它相加时,先将1换成float型,再计算,得到5.500000。类型转换的一般规则是低级类型从高级类型进行相应的转换。数据类型的级别由低到高的排序表示为:char→int→unsigned→log→float→double。

更多相关问题