运算符优先级按从高到低排列
二级C++笔试-403
(总分83,考试时间90分钟)
一、选择题
1. C++中运算符优先级由高到低排列正确的是
    A) ::++ + ||    B) < *|| ,
    C) sizeof %+::    D) ,&& new sizeof
2. 以下程序执行后的输出结果是(  )。
    #include  <iostream>
    using  namespace  std;
    void try(int,int,int,int);
    int main ( )
   
      int  x,y,z,r;
      x=1;
      y=2;
      try(x,y,z,r);
      cout<<r<<end1;
      return 0;
   
    void try(int x,int y, int z,int r)
   
      z = x+y;
      x = X*X;
      y = y*y;
      r = z+x+y;
   
    A) 18        B) 9        C) 10        D) 不确定
3. 下列对变量的引用中,错误的是
    A) int a;  int &p=a;    B) char a;  char &p=a;
    C) int a;  int &p;p=a;        D) float a;  float &p=a;
4. 下列字符串中可以用作C++语言标识符的是
A) 1234
B) foo~ ~bar
C) virtual
D) 34var
5. 下列程序的执行结果是______。
      #include<iostream.h>
      #include<stdlib.h>
      class TestClass
     
      public:
      int x,y;
      TestClass () x=y=0;
      TestClass (int a,int b)x=a;y=b;
      void disp()
     
      cout<<"x="<<x<<",y="<<y<<end1;
     
      void main()
      TestClass s1(2,3);
      s1.disp();
     
      A) x=2,y=2                            B) x=2,y=3
      C) x=3,y=2                        D) x=3,y=3
6. 在面向对象的程序设计中,下列叙述中错误的是
    A) 任何一个对象构成一个独立的模块
    B) 一个对象不是独立存在的实体,各个对象之间有关联,相互依赖
    C) 下一层次的对象可以继承上一层次对象的某些属性
    D) 上述三种说法都正确
7. 有下列程序:
      #include<iostream>
      using namespace std;
      class TestClass
      protected:
      TestClass()cout<<'x';
      TestClass(char c)cout<<c;
      ;
      class TestClassl:public TestClass
      public:
      TestClassl(char c)cout<<c;
      ;
      int main()
      TestClass1 d1('y');
      retum 0;
     
      执行这个程序屏幕上将显示输出(    )。
    A) y    B) yx    C) xy    D) yy
8. 有如下程序:
    #include<iostream>
    using namespace std;
    class Obj
    static int i;
    public:
    Obj( )i++
    ~Obj( )i--;
    static int getVal( )return i;
    ;
    int Obj::i=0;
    void f( )Obj ob2;cout<<ob2.getVal( );
    int main( )
    Obj obl;
    f( );
    Obj*ob3=new Obj;cout<<ob3->getVal( );
    delete ob3;cout<<Obj::getVal( );
    return 0;
   
    程序的输出结果是
    A) 232    B) 231    C) 222  D) 221
9. 数据库管理系统是______。
    A.操作系统的一部分    B.在操作系统支持下的系统软件
    C.一种编译系统    D.一种操作系统
10. 下面关于构造函数和析构函数的描述中,错误的是(    )。
    A.析构函数可以声明为虚函数
    B.对虚析构函数的调用可以采用动联编 
    C.一个类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响
    D.构造函数可以声明为虚函数
11. 下面是关于派生类声明的开始部分,其中正确的是(    )。
    A.class virtual B:public A    B.virtual class B:public A
    C.class B:public A virtual    D.class B:virtual publicA
12. 以下有关类与结构体关系的叙述不正确的是
    A) 结构体中只包含数据;类中封装了数据和操作
    B) 结构体的成员对外界通常是开放的;类的成员可以被隐蔽
    C) 用struct不能声明一个类型名;而class可以声明一个类名
    D) 结构体成员默认为Public;类成员默认为private
13. 在表达式x-y中,“-”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符“-”,这个表达式还可表示为(    )。
    A.x.operator-(y)    B.operator-(y,x)    C.y.operator-(x)    D.operator-(x,y)
14. 执行下列语句序列:
    int i=0;while(i<25)i+=3;cout<<i;
    输出结果是(    )。
    A.24    B.25    C.27    D.28
15. 下列关于线性链表的描述中正确的是(    )。
    A) 存储空间不一定连续,且各元素的存储顺序是任意的
    B) 存储空间不一定连续,且前件元素一定存储在后件元素的前面
    C) 存储空间必须连续,且各前件元素一定存储在后件元素的前面
    D) 存储空间必须连续,且各元素的存储顺序是任意的
16. 对建立良好的程序设计风格,下面描述正确的是
    A) 程序应简单、清晰、可读性好    B) 符号名的命名只要符合语法
    C) 充分考虑程序的执行效率    D) 程序的注释可有可无
17. 下列函数中,哪项是正确的递归函数(    )。
    A int Fun(int n)
     
        if(n<1)  return 1;
        else      return n*Fun(n+1);
     
  B) int Fun(ira n)
     
        if(abs(n)<1)  return 1;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。