上海易考网——专业计算机等级考试辅导 ·加入收藏
·设为首页
易考网首页
全国计算机等级考试
上海市高校计算机等级考试
计算机等级考试资料下载
易考网论坛
计算机等级考试信息公告
 
·全国计算机等级考试报名时间
·各地全国计算机等级考试考点
·全国计算机等级最新考试政策
 
 
计算机等级考试培训推介
 
·计算机等级考试一级
·计算机等级考试二级VB
·计算机等级考试二级C
·计算机等级考试二级ACCESS
 
 
 
全国计算机等级考试专栏
·国家计算机等级考试教程
全国计算机等级考试一级MS OFFICE教程 全国计算机等级考试二级VB教程
一级MS OFFICE 二级VB
更多教程...  
 
·经验交流
全国计算机等级考试历年试题
国家计算机等级考试应试技巧
全国计算机等级考试成绩查询
如何准备二级公共基础知识
 
·友情链接
上海市教育考试院
上海汇博教育进修学院
国家教育部考试中心
 
 
 
 
 
全国计算机等级考试历年试题集锦
全国计算机等级考试二级C++样题
点击此处下载全国计算机等级考试二级C++样题打印版

公共基础知识
一、选择题
(1)下列关于栈的叙述正确的是
A)栈是非线性结构  B)栈是一种树状结构  
C)栈具有先进先出的特征  D)栈具有后进先出的特征

(2)结构化程序设计所规定的三种基本控制结构是
A)输入、处理、输出  B)树形、网形、环形  
C)顺序、选择、循环  D)主程序、子程序、函数

(3)结构化程序设计的一种基本方法是
A)筛选法  B)递归法  C)归纳法  D)逐步求精法

(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:A)选择  B)投影  C)连接  D)并

二、填空题
1.对于输入为N个数进行快速排序算法的平均时间复杂度是(   )
2.在面向对象方法学中,直接反映了用户对目标系统的要求的模型是(  )
3.软件测试方法中,黑盒测试个白盒测试法是常用的方法,其中黑盒测试法主要是用于测试(  )
4.关系型数据库管理系统中存储与管理数据的基本形式是(  )
C++语言程序设计

一、选择题
(1)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是()
A)面向过程  B)面向对象  C)安全性  D)复用性

(2)C++语言的跳转语句中,对于break和continue说法正确的是()
A)break语句只应用与循环体中  
B)continue语句只应用与循环体中  
C)break是无条件跳转语句,continue不是  
D)break和continue的跳转范围不够明确,容易产生问题

(3)for(int x=0,y=o;!x& &y<=5;y++)语句执行循环的次数是()
A)0  B)5  C)6  D)无次数

(4)考虑函数原型void test(int a,int
b=7,char="*"),下面的函数调用中,属于不合法调用的是()
A)test(5); B)test(5,8); C)test(6,"#") D)test(0,0."*");

(5)下面有关重载函数的说法中正确的是()
A)重载函数必须具有不同的返回值类型;  B)重载函数形参个数必须不同;  
C)重载函数必须有不同的形参列表  D)重载函数名可以不同;

(6)下列关于构造函数的描述中,错误的是()
A)构造函数可以设置默认参数;  B)构造函数在定义类对象时自动执行  
C)构造函数可以是内联函数;  D)构造函数不可以重载

(7)下面描述中,表达错误的是()
A)公有继承时基类中的public成员在派生类中仍是public的  
B)公有继承是基类中的private成员在派生类中仍是private的  
C)公有继承时基类中的protected成员在派生类中仍是protected的  
D)私有继承时基类中的public成员在派生类中是private的

(8)应在下列程序划线处填入的正确语句是()
#include
class Base
{  public:
  void fun(){cout<<"Base::fun"<<ENDL;}
};
class Derived:public Base
{  void fun()
  {_____________ //显示调用基类的函数fun()
    cout<<"Derived::fun"<<ENDL;
  }
};
A)fun(); B)Base.fun(); C)Base::fun(); D) Base->fun();

(9)有如下程序:
#include
class BASE{
  char c;
public:
  BASE(char n):c(n){}
  virtual~BASE(){cout<<C;}
};
class DERIVED:public BASE{
  char c;
public:
  DERIVED(char n):BASE(n+1),c(n){}
  ~DERIVED(){cout<<C;}
};
int main()
{  DERIVED("X");
  return 0;
}
执行上面的程序将输出()
A)XY B)YX C)X D)Y

(10)在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是()
A)fail B)eof C)bad D)good
二、填空题
(1)下面程序的打印结果是 [1]
#incude
int f(int);
int main()
{  int i;
  for(i=0;i<5;i++)
  cout<<F(I)<<"";
  return0;
}
int f(int i)
{  static int k=1;
  for(;i>0;i- -)
  k + = i;
  return k;
}
(2)在用class定义一个类时,数据成员和成员函数的默认访问权限是 [2]
(3)含有纯虚函数的类称为 [3]
(4)已知intDBL(int n){return n + n;}和longDBL(long n){return n
+n;}是一个函数模板的两个实例,则该函数模板的定义是 [4]
(5)在下面程序的横线处填上适当的语句,使该程序执行结果为10.
#include
class MyClass
{  public:
  MyClass(int a){x = a;}
  [5] //取x值
  private
  int x;
};
int main()
{  MyClass my(10);
  cout<<MY.GETNUM()<<ENDL;
  return 0;
}
三、上机操作题(改错题1道,简单应用1道,综合应用1道)
1.使用VC6打开考生文件夹下的工程proj1,此工程包含一个源程序文件main.cpp,但该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:
member=0
member=5
menber=10
源程序文件main.cpp清单如下:
#include
class MyClass
{
public:
  MyClass(int i){member=i;}
  void SetMember(int m){member=m;}
  int GetMember()const{return menber;}
  void print()cont{cout<<"member="<<MEMBER<<ENDL;}
private:
  int member;
};
voed main()
{
/* * * * * * * * * * found * * * * * * * * * */
  MyClass obj1;
  obj1.print();
  MyClass obj2(3);
/* * * * * * * * * * found * * * * * * * * * */
  obj1.member=5;
/* * * * * * * * * * found * * * * * * * * * */
  MyClass.SetMember(10);
  obj1.print();
  obj2.print();
}

2.请编写一个函数int find(char s[],char
t[]),该函数在字符串s中查找字符串t,如果找到,则返回字符串t在字符串s中的位置(整数值);否则返回-1.注意:用数组方式及两重循环来实现该函数.
注意:部分源文件程序已存在文件PROC2,CPP中.
请勿修改主函数main和其他函数中的任何内容,仅在函数find的花括号中填写若干语句.
文件PROC2.CPP的内容如下:
#include
int find(char s[],char t[]);
const int MAXLINE =256;
int main()
{  char source[MAXLINE],rarget[MAXLINE];
  cout <<"Please input a string for searching:\n";
  cin.getline(source,MAXLINE);
  cout<<"Please input a string you want to find:\n";
  cin.getline(target,MAXLINE);
  int intpos = find(source,target);
  if(intpos>=0
    cout<<"Finding it.The target string is at index"
      <<INTPOS<<"OF string\n?;
  else
    cout<<"Not finding it.\n";
  return 0;
  }
int find(char s[],char t[])
{
}
3.使用VC6打开考生文件夹下的工程proj3.此工程包含一个源程序文件main.cpp.其中定义了用于表示日期的类Date,但类Date的定义并不完整.请按要求完成下列操作,将类Date的定义补充完整:
(1)定义私有数据成员year,month和day分别用于表示年,月,日,它们都是int型的数据.请在注释"// * * 2
* *"之后添加适当的语句.
(2)完成默认构造函数Date的定义,使Date对象的默认值为:year=1,month=1,day=1,请在注释"// *
* 2 * *"之后添加适当的语句.
(3)完成重载构造函数Date(int y,int m,int
d)的定义,把数据成员year,month和day分别初始化为参数y,m,d的值,请在注释"//* * 3 *
*"之后添加适当的语句.
(4)完成成员函数print的类外定义,使其以"年-月-日"的格式将Date对象的值输出到屏幕上.请在注释"//* * 4
* *"之后添加适当的语句.
注意:除在指定位置添加语句之外,请不要改动程序中的其他内源程序文件main.cpp清单如下:
//main.cpp
#include
class Date{
public:
  //* * 2 * *
  Date(int y,int m,int d)
  {
    //* * 3 * *
  }
  void print() const;

private:
  // date members
  //* * 1 * *
};

void Date::print()const
{  //* * 4 * *
}

int main()
{  Date national_day(1949,10,1);
  national_day.print();
  return 0;
}

       
点击此处下载全国计算机等级考试二级C++样题打印版
       
 
 
 
    返回首页
 
   

Copyright © 2005-2007 上海易考网 www.easyexam.com.cn 版权所有
设计维护:上海易考网技术支持 沪ICP备06013744号