试题

计算机二级C++考试试卷及答案

时间:2024-11-16 18:19:56 海洁 试题 我要投稿

2024年计算机二级C++考试试卷及答案

  在各领域中,我们都要用到试卷,在各领域中,只要有考核要求,就会有试卷,试卷是命题者按照一定的考核目的编写出来的。那么你知道什么样的试卷才能有效帮助到我们吗?下面是小编为大家收集的2024年计算机二级C++考试试卷及答案,欢迎大家分享。

2024年计算机二级C++考试试卷及答案

  计算机二级C++考试试卷及答案 1

  一、程序改错题

  (1)应改为“for(x=0;x<5;x++)”。

  (2)应改为“cout<  【解析】本题中根据数组a、b的定义。它们都有5个元

  素,而第1处的“for(x=0;x<=5;x++)”循环了6次,应该是5次,所以在第1处将其修改为“for(x=0;x<5;x++)”;第2处的P变量为指针型变量,p+x为糯向数组中第X个元素的地址,这里要输出的是存储单元的内容,所以使用“*”指针元素符,即修改为“cout<

  二、简单应用题

  inti,a[4],t;

  a[0]=n%10;//取整型n的第1位数字

  a[1]=n%100/10;//取整型n的第2位数字

  a[2]=n%1000/100;//取整型n的第3位数字

  a[3]=n/1000;//取整型n的第4位数字

  for(i=0;i<=3;i++)//每位数字加3,取余

  {

  a[i]+=3;

  a[i]%=9;

  }

  t=a[0];//根据加密算法交换

  a[0]=a[3];

  a[3]=t;

  t=a[1];

  a[1]=a[2];

  a[2]=t;

  returna[3]*1000+a[2]*100+a[1]*10+a[0];

  //重组,返回加密数字

  【解析】本题首先取得要加密整数的每一位数字,并存入数组。根据加密算法,利用循环实现每位数字加3,再除以9取余。根据加密算法进行数字交换,最后重组,返回密码。

  三、综合应用题

  (1)应添加“staticintNum;”。

  (2)应添加“intTC:Num=10;”。

  (3)应添加“staticintget(TC*obj)”。

  (4)将“cout<<<  【解析】第1处要求“增加静态私有变量Num,类型为int”。静态变量的定义格式为static类型变量名称,本题只要在类的private区域定义int型的静态变量Num,即在第1处添加“staticintNum;”。第2处要求“增加静态变量Num并初始化为10”。第2个标识的位置在类TC的外部,在C++中,使用“:”作用域运算符声明定义的变量属于哪个类。由题干知道,Num属于类TC,根据C++的作用域运算符,在第2处添加语句“intTC:Num=10;”。第3处要求“完成静态函数9et的定义”。根据第3个标识下的“re-turnNum+obj->Own;”语句知道,get函数具有形参obj指针。obj调用Own变量,说明它是TC类型,并且静态函数的定义只要在其前面声明static就可以了,即在第3处添

  加语句“staticintget(TC*obj)”。第4处要求“完成对象obj对静态函数get进行调用,使得输出21到屏幕上”。程序中第4处的“cout<<< 程序改错题(18分)

  使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,即使程序在屏幕输出以下类似内容:

  0012FF6810012FF3C5

  0012FF6C20012FF444

  0012FF7030012FF4C3

  0023FF7440012FF542

  0012FF7850012FF5C1

  006AFDCC~006AFDEF数据可能因为机器的不同,程序输出的内容会有差异。只要相差为4的连续地址即可。

  注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。

  试题程序:

  #include

  usingnamespacestd;

  intmain()

  {

  int*P,a[5]={1,2,3,4,5};

  double*q,b[5]={5.0,4.0,3.0,2.0,1.0);

  intx;

  P=a;

  q=b;

  //********error********

  for(x=0;x<=5;X++)

  //********error********

  cout<  (q+x)<  return0;

  }

  四、简单应用题(24分)

  使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(intn)的功能是实现对一个整数的.加密,具体的加密方法是一个4位长的整数,用每位数字加上3然后除以9的余数代替该数字,再将第1位和第4位交换,第2位和第3位交换,然后返回得到的密码。

  程序输出结果为

  1864

  2075

  注意:不能修改其他部分的代码。

  试题程序:

  #include

  #include

  intfun(intn)

  {

  }

  intmain()

  {

  inti=1357:

  cout<  i=2468;

  cout<  return0;

  }

  五、综合应用题(18分)

  使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类并不完整,按要求完成下列操作,将类

  的定义补充完整,使得程序的输出结果为21。

  (1)增加静态私有变量Num,类型为int,请在注释1后添加适当的语句。

  (2)增加静态变量Num并初始化为10,请在注释2后添加适当的语句。

  (3)完成静态函数get的定义,请在注释3后添加适当的语句。

  (4)完成对象obj对静态函数get的调用,使得输出结果

  为21,请在注释4后添加适当的语句。

  注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。

  试题程序:

  #include

  classTC

  {

  //********1********

  intOwn;

  public:

  TC(inti)

  {

  Own=i;

  }

  //********2********

  {

  returnNum+obj->Own;

  }

  };

  //********3********

  intmain()

  {

  TCobj(11);

  //********4********

  cout<<<  return0;

  }

  计算机二级C++考试试卷及答案 2

  1、假定有一个菜单项,名为Menultem,为了在运行时使该菜单项不可见,应使用的语句为( )。

  A.Menultem.Enabled=False

  B.MenuItem.Enabled=True

  C.MenuItem.Visible=True

  D.Menultem.Visible=Flase

  2、为丫从当前文件夹中读入文件File1.txt,某人编写了下面的程序:

  PrivateSubCommand1_Click( )

  Open"File1.txt"ForOutputAs#20

  DoWhileNotEOF(20)

  LineInput#20,ch$

  Printch

  Loop

  Close#20

  EndSub

  程序调试时,发现有错误,下面的修改方案中正确的是( )。

  A.在Open语句中的文件名前添加路径

  B.把程序中各处的“20”改为“1”

  C.把Printch语句改为Print#20,ch

  D.把Open语句中的0utput改为Input

  3、设有以下函数过程

  PrivateFunctionFun(a( )AsInteger,bAsString)AsInteger

  …

  EndFunction

  若已有变量声明:

  Dimx(5)AsInteger,nAsInteger,chAsString

  则下面正确的过程调用语句是( )。

  A.x(O)=Fun(x."ch")

  B.n=Fun(n.ch)

  C.CallFunX,"ch"

  D.n=Fun(x(5),ch)

  4、窗体的`左右两端各有1直线,名称分别为Line1、Line2;名称为Shape1的圆靠在左边的Linel直线上(见图);另有1个名称为Timer1的计时器控件,其Enabled属性值是True。要求程序运行后,圆每秒向右移动100,当圆遇到Line2时则停止移动。为实现上述功能,某人把计时器的Interva1属性设置为1000,并编写了如下程序:

  PrivateSubTimer1Timer( )

  Fork=Line1.X1ToLine2.X1Step100

  IfShape1.Left+Shape1.width

  Shape1.Left=Shape1.Left+100

  EndIf

  Nextk

  EndSub

  运行程序时发现圆立即移动到了右边的直线处,与题目要求的移动方式不符。为得到与题目要求相符的结果,下面修改方案中正确的是( )。

  A.把计时器的Interval属性设置为1

  B.把Fork=line1.X1ToLine2.X1Step100和Nextk两行删除

  C.把Fork=Line1.X1ToLine2.X1Step100改为Fork=Line2.X1ToLine1.X1Step100

  D.把IfShape1.Left+Shepe1.Width

  5、以下关予菜单设计的叙述中错误的是( )。

  A.各菜单项可以构成控件数组

  B.每个菜单项可以看成是一个控件

  C.设计菜单时,菜单项的“有效”选,即有效,表示该菜单项不显示

  D.菜单项只响应单击事件

【计算机二级C++考试试卷及答案】相关文章:

2016年计算机二级C++考试卷及答案08-05

计算机二级考试C++练习及答案10-09

全国计算机二级考试C++精选试题及答案08-17

2016计算机二级考试《C++》练习题及答案10-23

2016计算机二级考试C++练习题及答案07-15

计算机二级《C++》上级考试试题及答案201708-30

全国计算机二级考试C++巩固试题与答案10-03

2016计算机二级考试C++复习题及答案08-22

2016年计算机二级考试C++考试题及答案10-09