22计算机二级测试试题(网友回忆版)含答案
以下程序输出结果是 #include <stdio.h> main ( ) { int i=0,a=0; while ( i<2 0 ) { for(;;) { if ((i%10) ==0) break; else i--; } i+=11; a+=i; } print f ( "%d\n" , a); }
A.21
B.32
C.33
D.11
解析:break语句只能在循环体和switch语句体内使用。本题程序为在while循环中嵌套for循环。先看内层for循环,该循环的3个表达式全部省略,循环条件始终为真,但循环体内的break语句为终止循环的条件。首先,由初始条件判断外层循坏while括号内表达式的值,该值为真,执行本次while循环,即执行循环体内的订语句,判断该表达式后面括号里表达式的值为真,执行break语句,跳出内层循环,执行下面的语句,此时i和a的值均变为11;回到外层循环,判断表达式“i20”仍为真,执行内层循环语句,此时if条件不满足,执行else语句,i的值为10,继续内层循环,if语句条件满足,执行break语句,跳出内层循环,执行下面的语句后,i和a的值分别是21和32。再判断外层循环的条件为假,结束循环.所以,4个选项中B为所选。
如果A为整数且,|A|>=10,则打印“OK”,否则打印“Error”,表示这个条件的单行格式If语句是( )。
A.If Int(A)=A And Sqr(A)>=10 Then Print"OK"Else Print "Error"
B.If Fix(A)=a And Abs(A)>=-10 Then Print"OK"Else Print "Error"
C.If Int(A)=A And(A>=10,A<-10) Then Print"OK"Else Print "Error"
D.If Fix(A)=A And A>=10,And A<=-10 Then Print"OK" Else Print "Error"
解析:解答本题考生需了解题中用到的3个函数的作用,Int和Fix都会删除参数的小数部分而返回剩下的整数。Abs函数返回参数的绝对值,其类型和参数相同。而Int和Fix的不同之处在于,如果参数为负数,则Int返回小于或等于参数的第一个负整数,而Fix则会返回大于或等于参数的第一个负整数。
public class X { public static void main(String [] args) { try { badMethod(); System.out.print(“A”); } catch (Exception ex) { System.out.print(“C”); } finally { System.out.print(“B”); } System.out.print(“D”); } public static void badMethod() { throw new Error(); } } What is the result?()
- A、 ABCD
- B、 Compilation fails.
- C、 C is printed before exiting with an error message.
- D、 BC is printed before exiting with an error message.
- E、 BCD is printed before exiting with an error message.
正确答案:B
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为: number=1 number=10 number=100 注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在//******error******的下面。 试题程序: include<iostream.h> classTC { public: TC(inti) { number=i; } voidSetNumber(intm) { number=m; } intGetNumberconst { returnnumber; } voidPrintconst { cout<<"number="<<number<<endl; } private: intnumber; }; voidmain { //********error******** TCobjl; objl.Print; TCobj2(3); //********error******** objl.number=10; //********error*‰****** TC.SetNumber(100); objl.Print; obj2.Print; }
(1)应改为“TCobjl(1);”。
(2)应改为“0bj1.SetNumber(10);”。
(3)应改为“0bj2.SelNumber(100);”。
【解析】本题第1处的“TCobjl;”语句是声明TC类的对象0bj1,根据TC类构造函数的定义TC(inti),存在整型参数,并且题目要求第一个输出结果两1,所以补全参数1,即第1处的“TCobjl(1);”。第2处处的“objl.number=10;”应该是调用成员函数SetNumber赋值。在C++中成员函数的使用形式应该是:对象名.成员函数,所以修改为“obj1.SetNumber(10);”。类是对象的抽象,而对象是类的具体实例。第3处“TC.SetNumber(100);”语句中的TC为类,并不是对象,这里应该使用定义的对象,即obj2,所以将语句修改为“obj2.SetNumber(100);”。
ABCD
Compilation fails.
C is printed before exiting with an error message.
BC is printed before exiting with an error message.
BCD is printed before exiting with an error message.
A.0xa
B.a
C.1
D.10
执行下列语句后,输出结果是______。
s$="ABCDEFG"
Print lnStr(s$,"efg")
Print LCase$(s$)
0CR>abcdefg 解析: 本题考查了字符串函数的应用。lnStr函数是字符串匹配函数,它的格式为:InStr([首字符位置,]字符串1,字符串2[,n])。它的功能是在字符串1中查找字符串2,如果找到了,则返回字符串2的第一个字符在字符串1中的位置。注意:字符串的第一个字符的位置为1。
语句Print(a=2)And(b=-2)的输出结果是()
- A、True
- B、结果不确定
- C、-1
- D、False
正确答案:D
(7)执行下列语句后,输出结果是。 s$="ABCDEFG" Print InStr(s$,"efg") Print LCase$(s$)
【解析】本题考查了字符串函数的应用。InStr函数是字符串匹配函数,它的格式为:InStr([首字符位置,]字符串1,字符串2[,n])。它的功能是在字符串1中查找字符串2,如果找到了,则返回字符串2的第一个字符在字符串1中的位置。注意:字符串的第一个字符的位置为1。
LCase$函数是字母大小写转换函数,它的格式为:LCase$(字符串)。它可以将字符串中的大写字母转换为小写字母。
UCase$函数也是字母大小写转换函数,它的格式为:UCase$(字符串)。它可以将字符串中的小写字母转换为大写字母。
A.333
B.334
C.234
D.233
执行下列语句后,输出结果为______。
s$="ABCDEFG"
Print InStr(s$,"efg")
Print LCase$(s$)
0CR>abcdefg 解析:本题考查了字符串函数的应用。InStr函数是字符串匹配函数,它的格式为:InStr([首字符位置,]字符串1,字符串2[,n])。它的功能是在字符串1中查找字符串2,如果找到了,则返回字符串2的第一个字符在字符串1中的位置。注意:字符串的第一个字符的位置为1。
LCase$函数是字母大小写转换函数,它的格式为:LCase$(字符串)。它可以将字符串中的大写字母转换为小写字母。
UCase$函数也是字母大小写转换函数,它的格式为:UCase$(字符串)。它可以将字符串中的小写字母转换为大写字母。
如果x为整数且|x|>=100,则打印“OK”,否则打印“Error”,表示这个条件的单行格式 If语句是
A.If Int((x)=x And Sqr(x)>=100 Then Print "OK" Else Print "Error"
B.If Fix(x)=x And Abs(x)>=100 Then Print"OK"Else Print"Error"
C.If Int(x)=x And (x>=100,x<=-100)Then Print"OK"Else Print"Error"
D.If Fix(x)=x And x>=100 And x<=-100 Then Print "OK" Else Print "Error"
解析:绝对值函数为Abs,而取整函数为Fix或者Int。本题中,选项A使用了平方根函数;选项C书写错误;选项D的条件语句错误,x>=100Andx=-100这个条件永远不成立,应该为(x>=100Orx=-100)。正确答案为选项B。
语句Print “123”+45的输出结果是“12345” 。
正确答案:错误
(19)如果A为整数且|A|>=10,则打印“OK”,否则打印“Error”,表示这个条件的单行格式If语句是 A.If Int(A)=A And Sqr(A)>=10 Then Print“OK”Else Print “Error” B.If Fix(a)=A And Abs(a)>=10 Then Print“OK”Else Print “Error” C.If Int(A)=A And (A>=10 ,A=-10) Then Print“OK”Else Print “Error” D.If Fix(A)=A And A>=10, Abs A<=-10 Then Print“OK”Else Print “Error
【解析】解答本题考生需了解题中用到的3个函数的作用,Int和Fix都会删除参数的小数部分而返回剩下的整数。Abs函数返回参数的绝对值,其类型和参数相同。而Int和Fix的不同之处在于,如果参数为负数,则Int返回小于或等于参数的第一个负整数,而Fix则会返回大于或等于参数的第一个负整数。
语句:print sgn(-6^2)+Abs(-6^2)+int(-6^2)的输出结果是( )
A.-36B.1C.-1D.-72
52967.以下语句
a=sqr(3)
print format(a,"####.###")
的输出结果是( )
A.1.732
B. 0001.732
C.###1.732
D. 1.7320
无参函数的调用格式为()
- A、函数名
- B、函数名()
- C、函数名();
- D、返回值类型函数名();
正确答案:C
下列不是函数重载所要求的条件是()
- A、函数名相同
- B、参数个数不同
- C、参数类型不同
- D、函数返回值类型不同
正确答案:D
程序在调用重载函数时,根据()区分到底要调用哪个函数。
- A、函数名
- B、返回值类型
- C、参数个数和类型
- D、以上都可以
正确答案:C
关于函数知识下列描述说法不正确的是()
- A、函数值是指函数被调用之后,执行函数体中的程序段所取得的并返回给主调函数的值。
- B、函数的值通过return语句返回主调函数
- C、有返回值函数的定义格式为:返回值类型函数名(参数列表);{函数体}
- D、无返回值函数的定义格式为:void函数名(参数列表);{函数体}
正确答案:C,D
返回值函数的定义格式正确的是()
- A、返回值类型函数名(形式参数列表){语句;return表达式;}
- B、void函数名(形式参数列表){语句;return表达式;}
- C、返回值类型函数名(实参数列表){语句;return表达式;}
- D、void函数名(实参数列表){语句;return表达式;}
正确答案:A
下列属于函数的基本格式的是()。
- A、函数名[参数序列]
- B、函数名“参数序列”
- C、函数名{参数序列}
- D、函数名(参数序列)
正确答案:D
在函数说明时,下列不必要的是( )项。
A.函数参数的类型
B.函数参数名字
C.函数的名字
D.返回值表达式
解析:在函数说明时,函数参数的名字可以省略,但在函数实现时,需指明。
函数不调用也是可以执行的
函数的命名能以数字开头
函数的三要素:函数名,参数,返回值
参数和返回值是可省略的
下列对于虚函数和重载函数的叙述,正确的是( )。
A.虚函数要求函数名、返回值类型和参数序列完全相同
B.重载函数要求函数有相同的返回值类型和函数名称,并有不同的参数序列
C.虚函数是根据对象的不同去调用不同类的虚函数
D.虚函数和重载函数都是在运行时表现出多态功能
要实现多态性,派生类中的虚函数必须( )。
A.函数名、参数及返回值必须与基类中对应的虚函数完全相同
B.参数个数不必与基类中对应的虚函数的函数名完全相同
C.参数类型不必与基类中对应的虚函数的函数名完全相同
D.返回值类型不必与基类中对应的虚函数的函数名完全相同
解析:函数名、参数及返回值必须与基类中对应的虚函数完全相同。
函数名相同
参数个数不同
参数类型不同
函数返回值类型不同
如何区分多个构造函数?()
- A、 利用不同的返回值区分
- B、 利用不同的参数名区分
- C、 利用不同的函数名区分
- D、 利用参数类型,参数数量,参数排列顺序区分
正确答案:D
函数名[参数序列]
函数名“参数序列”
函数名{参数序列}
函数名(参数序列)
以下关于函数下列说法正确的是()。
- A、函数不调用也是可以执行的
- B、函数的命名能以数字开头
- C、函数的三要素:函数名,参数,返回值
- D、参数和返回值是可省略的
正确答案:C,D
回值函数的定义格式正确的是()
- A、返回值类型函数名(形式参数列表){语句;return表达式;}
- B、void函数名(形式参数列表){语句;return表达式;}
- C、返回值类型函数名(实参数列表){语句;return表达式;}
- D、void函数名(实参数列表){语句;return表达式;}
正确答案:A
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为: number=1 number=10 number=100 注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在//******error******的下面。 试题程序: include<iostream.h> classTC { public: TC(inti) { number=i; } voidSetNumber(intm) { number=m; } intGetNumberconst { returnnumber; } voidPrintconst { cout<<"number="<<number<<endl; } private: intnumber; }; voidmain { //********error******** TCobjl; objl.Print; TCobj2(3); //********error******** objl.number=10; //********error*‰****** TC.SetNumber(100); objl.Print; obj2.Print; }
(1)应改为“TCobjl(1);”。
(2)应改为“0bj1.SetNumber(10);”。
(3)应改为“0bj2.SelNumber(100);”。
【解析】本题第1处的“TCobjl;”语句是声明TC类的对象0bj1,根据TC类构造函数的定义TC(inti),存在整型参数,并且题目要求第一个输出结果两1,所以补全参数1,即第1处的“TCobjl(1);”。第2处处的“objl.number=10;”应该是调用成员函数SetNumber赋值。在C++中成员函数的使用形式应该是:对象名.成员函数,所以修改为“obj1.SetNumber(10);”。类是对象的抽象,而对象是类的具体实例。第3处“TC.SetNumber(100);”语句中的TC为类,并不是对象,这里应该使用定义的对象,即obj2,所以将语句修改为“obj2.SetNumber(100);”。
如果x为整数且|x|>=100,则打印“OK”,否则打印“Error”,表示这个条件的单行格式 If语句是
A.If Int((x)=x And Sqr(x)>=100 Then Print "OK" Else Print "Error"
B.If Fix(x)=x And Abs(x)>=100 Then Print"OK"Else Print"Error"
C.If Int(x)=x And (x>=100,x<=-100)Then Print"OK"Else Print"Error"
D.If Fix(x)=x And x>=100 And x<=-100 Then Print "OK" Else Print "Error"
解析:绝对值函数为Abs,而取整函数为Fix或者Int。本题中,选项A使用了平方根函数;选项C书写错误;选项D的条件语句错误,x>=100Andx=-100这个条件永远不成立,应该为(x>=100Orx=-100)。正确答案为选项B。
语句Print “123”+45的输出结果是“12345” 。
正确答案:错误
执行下列语句后,输出结果是______。
s$="ABCDEFG"
Print lnStr(s$,"efg")
Print LCase$(s$)
0CR>abcdefg 解析: 本题考查了字符串函数的应用。lnStr函数是字符串匹配函数,它的格式为:InStr([首字符位置,]字符串1,字符串2[,n])。它的功能是在字符串1中查找字符串2,如果找到了,则返回字符串2的第一个字符在字符串1中的位置。注意:字符串的第一个字符的位置为1。
以下程序输出结果是 #include <stdio.h> main ( ) { int i=0,a=0; while ( i<2 0 ) { for(;;) { if ((i%10) ==0) break; else i--; } i+=11; a+=i; } print f ( "%d\n" , a); }
A.21
B.32
C.33
D.11
解析:break语句只能在循环体和switch语句体内使用。本题程序为在while循环中嵌套for循环。先看内层for循环,该循环的3个表达式全部省略,循环条件始终为真,但循环体内的break语句为终止循环的条件。首先,由初始条件判断外层循坏while括号内表达式的值,该值为真,执行本次while循环,即执行循环体内的订语句,判断该表达式后面括号里表达式的值为真,执行break语句,跳出内层循环,执行下面的语句,此时i和a的值均变为11;回到外层循环,判断表达式“i20”仍为真,执行内层循环语句,此时if条件不满足,执行else语句,i的值为10,继续内层循环,if语句条件满足,执行break语句,跳出内层循环,执行下面的语句后,i和a的值分别是21和32。再判断外层循环的条件为假,结束循环.所以,4个选项中B为所选。
如果A为整数且,|A|>=10,则打印“OK”,否则打印“Error”,表示这个条件的单行格式If语句是( )。
A.If Int(A)=A And Sqr(A)>=10 Then Print"OK"Else Print "Error"
B.If Fix(A)=a And Abs(A)>=-10 Then Print"OK"Else Print "Error"
C.If Int(A)=A And(A>=10,A<-10) Then Print"OK"Else Print "Error"
D.If Fix(A)=A And A>=10,And A<=-10 Then Print"OK" Else Print "Error"
解析:解答本题考生需了解题中用到的3个函数的作用,Int和Fix都会删除参数的小数部分而返回剩下的整数。Abs函数返回参数的绝对值,其类型和参数相同。而Int和Fix的不同之处在于,如果参数为负数,则Int返回小于或等于参数的第一个负整数,而Fix则会返回大于或等于参数的第一个负整数。
public class X { public static void main(String [] args) { try { badMethod(); System.out.print(“A”); } catch (Exception ex) { System.out.print(“C”); } finally { System.out.print(“B”); } System.out.print(“D”); } public static void badMethod() { throw new Error(); } } What is the result?()
- A、 ABCD
- B、 Compilation fails.
- C、 C is printed before exiting with an error message.
- D、 BC is printed before exiting with an error message.
- E、 BCD is printed before exiting with an error message.
正确答案:B
ABCD
Compilation fails.
C is printed before exiting with an error message.
BC is printed before exiting with an error message.
BCD is printed before exiting with an error message.
(7)执行下列语句后,输出结果是。 s$="ABCDEFG" Print InStr(s$,"efg") Print LCase$(s$)
【解析】本题考查了字符串函数的应用。InStr函数是字符串匹配函数,它的格式为:InStr([首字符位置,]字符串1,字符串2[,n])。它的功能是在字符串1中查找字符串2,如果找到了,则返回字符串2的第一个字符在字符串1中的位置。注意:字符串的第一个字符的位置为1。
LCase$函数是字母大小写转换函数,它的格式为:LCase$(字符串)。它可以将字符串中的大写字母转换为小写字母。
UCase$函数也是字母大小写转换函数,它的格式为:UCase$(字符串)。它可以将字符串中的小写字母转换为大写字母。
执行下列语句后,输出结果为______。
s$="ABCDEFG"
Print InStr(s$,"efg")
Print LCase$(s$)
0CR>abcdefg 解析:本题考查了字符串函数的应用。InStr函数是字符串匹配函数,它的格式为:InStr([首字符位置,]字符串1,字符串2[,n])。它的功能是在字符串1中查找字符串2,如果找到了,则返回字符串2的第一个字符在字符串1中的位置。注意:字符串的第一个字符的位置为1。
LCase$函数是字母大小写转换函数,它的格式为:LCase$(字符串)。它可以将字符串中的大写字母转换为小写字母。
UCase$函数也是字母大小写转换函数,它的格式为:UCase$(字符串)。它可以将字符串中的小写字母转换为大写字母。
A.0xa
B.a
C.1
D.10
语句:print sgn(-6^2)+Abs(-6^2)+int(-6^2)的输出结果是( )
A.-36B.1C.-1D.-72
52967.以下语句
a=sqr(3)
print format(a,"####.###")
的输出结果是( )
A.1.732
B. 0001.732
C.###1.732
D. 1.7320
(19)如果A为整数且|A|>=10,则打印“OK”,否则打印“Error”,表示这个条件的单行格式If语句是 A.If Int(A)=A And Sqr(A)>=10 Then Print“OK”Else Print “Error” B.If Fix(a)=A And Abs(a)>=10 Then Print“OK”Else Print “Error” C.If Int(A)=A And (A>=10 ,A=-10) Then Print“OK”Else Print “Error” D.If Fix(A)=A And A>=10, Abs A<=-10 Then Print“OK”Else Print “Error
【解析】解答本题考生需了解题中用到的3个函数的作用,Int和Fix都会删除参数的小数部分而返回剩下的整数。Abs函数返回参数的绝对值,其类型和参数相同。而Int和Fix的不同之处在于,如果参数为负数,则Int返回小于或等于参数的第一个负整数,而Fix则会返回大于或等于参数的第一个负整数。
语句Print(a=2)And(b=-2)的输出结果是()
- A、True
- B、结果不确定
- C、-1
- D、False
正确答案:D
A.333
B.334
C.234
D.233
相关考题:
- 开空调时压缩机突然出现尖叫声,往往是制冷系的内部压力过高形成的。
- 站在地上的人触到火线,电流通过人体流入大地的触电形式为单相触电。
- 非定期维护一般包括走合维护)()维护和长期停驶或封存汽车的维护。A、换季B、出车C、一级D、二级维护
- 对以下加工中出现的问题,不是由铣床主轴锥孔中心线圆跳动超差引起的是()A、加工面粗糙度差B、铣刀使用寿命短C、影响加工面的平面度D、镗孔孔径扩大
- 使用切断机时,机械运转正常后,方冷断料。断料时,手与刀口距离不得小于()厘米,活动刀片前进时禁止送料。A、20B、15C、25
- 数控加工工序集中的特点是()A、减少了设备数量B、减少了工序数目C、增加了加工时间D、增加了装夹次数E、提高了生产率
- 建安施工过程中,对员工最易造成伤害的五类工伤事故是:()、()、()、()、()。
- 单选题Which of the following ALTER DISKGROUP commands does not use V$ASM_OPERATION to record the status of the operation?()A ADD DIRECTORYB DROP DISKC RESIZE DISKD REBALANCEE ADD FAILGROUP
- JGJ59-2011标准适用于建筑施工企业及其主管部门对建筑安全工作的检查和评价。
- 升降机运行到最上层或最下层时,严禁用行程限位开关作业停止运行的控制开关。
- 熔化焊接与热切割作业安全生产考试试题(全考点)模拟卷及参考答案(第45版)-
- 建筑起重信号司索工考试题库测试强化卷及答案(15)-
- 品德与社会检测题(上册)
- 广州博鳌纵横网络科技有限公司10月招聘面试题152道20201016_
- 自学考试专题:预防医学(二)模拟题2生活环境(空气、水、住宅健康相关产品)_
- 国家开放大学电大《酒店前厅服务与管理》《离散数学》网络课形考网考作业(合集)答案_
- 2021事业单位考试-行测每日一练题目(3.2)_
- 高考一轮复习农业选择题专题训练-
- 西师大版小学语文第三单元+主题训练卷(含答案)_
- 2022年整理国家开放大学电大专科《个人与团队管理》机考网考题库附答案-