×

Loading...

Topic

This topic has been archived. It cannot be replied.
  • 工作学习 / IT技术讨论 / c++ test
    本文发表在 rolia.net 枫下论坛1、while(!x)中的(!x)与下面条件( )等价。
       A、x==1
       B、x!=1
       C、x!=0
       D、x==0
    2、每个类( )构造函数。
       A、只能有一个
       B、只可有公有的
       C、可以有多个
       D、只可有缺省的
    3、在一个类中可以对一个操作符进行( )重载。
       A、1种
       B、2种以下
       C、3种以下
       D、多种
    4、重载赋值操作符时,应声明为( )函数。
       A、 友元
       B、 虚
       C、 成员
       D、 多态
    5、通过( )调用虚函数时,采用动态束定。
       A、 对象指针
       B、 对象名
       C、 成员名限定
       D、 派生类名
    6、在类中声明转换函数时不能指定( )( )
       A、 参数
       B、 访问权限
       C、 返回类型
       D、 操作
       E、 标识符
    7、字符串之间的比较按( )( )进行。
       A、 字符串的长度
       B、 字符的大小写种类
       C、 字符串的内部代码
       D、 字符串的含意
       E、 从头至尾的顺序
    8、C++类体系中,不能被派生类继承的有( )( )。
       A、 转换函数
       B、 构造函数
       C、 虚函数
       D、 静态成员函数
       E、 赋值操作函数
        
    9、拷贝初始化构造函数使用_______________来初始化创建中的对象。
    10、一元操作符,作为友元函数重载时只能声明_______________形参;作为类成员函数重载时_______________形参。
    11、在一个继承结构中,当两个相同的名字之间没有_______________时,对此名字的访问将出现二义性。
         

    12、 编程题(共30分)
       1、 下面函数chnum将一个整数字符串转换为一个整数。请在[1]、[2]、[3]、[4]处填入正确内容。
       int chnum (char *str)
       { int i, j, k, h, len, num=0;
       len=strlen(str);
       for(i=0); [1]; i++)
       { k=1;
       j=len=len-1;
       while ([2])
       {k=k*10;
       j--;
       }h=[3]-’0’;
       num=num=h*[4];
       }
       return num;
       }
       [1]
       [2]
       [3]
       [4]
      
    13、 下列程序定义了一实部为real,虚部为imag的复数类complex,并在类中将复数的加、减操作重载为友元函数。
       请在[1]~[12]处填上适当内容。(9分)
       class complex{
       private: float [1], [2];
       public: complex (float r=[3], float i=[4])
       {real=r; imag=i;}
       [5] operator+(complex,complex);
       [6] operator-(complex,complex);
       };
       [7] operator+(complex c1,complex c2)
       {return complex([8], [9]);}
       [10]operator-(complex c1,complex c2)
       {return complex([11], [12]);}
       [1] [2]
       [3] [4]
       [5] [6]
       [7] [8]
       [9] [10]
       [11] [12]
      
    14、 下列shape类是一个表示形状的抽象类,area( )为求图形面积的函数,total( )则是一个通用的用以求不同形状的图形面积总和的函数。请从shape类派生三角形类(triangle)、矩形类(rectangle)、并给出具体的求面积函数。(9分)
       class shape{
       public:
       virtual float area( )=0
       };
       float total(shape *s[ ],int n)
       {float sum=0.0;
       for(int i=0;i area( );
       return sum;
       }更多精彩文章及讨论,请光临枫下论坛 rolia.net
    • 国内还是加国的试题?