设为首页    加入收藏

自学考试省级导航

全国 A安徽 B北京 C重庆 F福建 G广东 广西 甘肃 贵州 H河南 河北 湖南 湖北 黑龙江 海南 J江苏 江西 吉林 L辽宁 N内蒙古 宁夏 Q青海 S山东 山西 陕西 四川 上海 T天津
     X新疆 西藏 Y云南 Z浙江 历年真题分类检索

全国2003年10月自考面向对象程序设计试题 (打印word版)(二)
2013-04-10 19:51:37 来源:91考试网 作者:www.91exam.org 【
四、完成程序题(本大题共5小题,每小题4分,共20分)。根据题目要求,完成程序填空。
26.在下面程序横线处填上适当内容,以使该程序执行结果为:
   12
   88

   # include
   template
   class Tany{
   public:
       ①             ;
       void pr(){
             if(sizeof(int)==②             )
                   count<<(x>y? x:y)<             else
                   cout<<(x>y? y:x)<       }
   };
   void main( ){
        Tanydobj={12.0,88.0};
        dobj.pr( );
        Tany iobj={12,88};
        iobj.pr( );
   }
27.在下面的横线处填上适当内容,使程序完整。
   # include
   # include
   class loc{
         private:
                float x,y;
   public;
                loc(①             )
                {
                   x=x1;
                   y=y1;
                }
                float getx( ){return x;}
                float gety( ){return y;}
                ②              float dis(loc&,loc&);
   };
   float loc::dis(loc&a,loc&b)
   {
         flost dx=a.x-b.x;
         flost dy=a.y-b.y;
         return sqrt(dx*dx+dy*dy);
   }
   void main( )
   {
        loc pl(3.5,4.5),p2(5.5,6.5);
        float d=loc::dis(p1,p2);
        cout<<“The distance is”<   }
28.在下面程序中的横线处填上适当内容,使程序完整。
   # include
   class vehicle
   {
        protected:
            int size;
            int speed;
        public;
            void setSpeed(int s){speed=s;}
            ①              getSpeedLevel( ){return speed/10;}
   };
   class car:public vehicle
   {
        public:
             int getSpeedLeve( ){return speed/5;}
   };
   class truck:public vehicle
   {
        public:
             int getspeedLevel( ){return speed/15;}
   };
   int maxSpeedLevel(vehicle ②             ,vehicle ③             )
   {
        if(v1.getSpeedLevel( )>v2.getSpeedLevel( ))
             return 1;
        else
             reutrn 2;
   }
   void main()
   {
        turck t;
        car c;
        t.setSpeed(130);
        c.setSpeed(60);
        cout<   }
29.在下面横线处填上合适内容,完成类B的定义。
   # include
   class A{
          public:A( ){a=0;}
                 A(int i){a=i;}
                 void print( ){cout<          private:int a;
   };
   class B:public A{
           public:B( ){b1=b2=0}
                  B(①             ){b1=i;b2=0;}
                  B(int i,int j,int k):②             {b1=j;b2=k;}//使a的值为i
                  void print( ){A::print( );cout<                  private:int b1,b2;
   }
30.根据注释在空白处填写适当内容。
   class Location{
         private:
           int X,Y;
         public:
         void init(int initX,int initY);
         int GetX( );
         int GetY( );
   };
   void Location::init(int initX,int initY)
   {
        X=initX;
        Y=initY;
   }
   int Location::GetX( )
   {
        reutrn X;
   }
   int Location::GetY( )
   {
        reutrn Y;
   }
   # include
   void main( )
   {
        Location A1;A1.init(20,90);
        ①             //定义一个指向A1的引用rA1         ②             //用rA1在屏幕上输出对象A1的数据成员X和Y的值
   }
五、程序分析题(本大题共6小题,每小题5分,共30分)给出下面各程序的输出结果。
31.写出下面程序的输出结果:
   # include
   class FunArray{
来源:91 考试网         int  *pa;  //指向一个数组空间
         int size;  //数组元素个数
   public:
         FunArray(int a[ ],int thesize):pa(a),size(thesize){ }
         int Size( ){return size;}
         int& operator[ ](int index){return pa[index-1];}
   };
   void main( ){
         int s[ ]={3,7,2,1,5,4};
         FunArray ma(s,sizeof(s)/sizeof(int));
         ma[3]=9;
         for(int i=1;i<=ma.Size( );i++) cout<   }
32.写出下面程序的输出结果:
   # include
   template
   class Tclass{
         T x,y;
   public:
        Tclass(T a,T b):x(a){y=b;}
        Tclass(T a){y=(T)0,x=a;}
        void pr( ){
             char c;
             c=(y>=(T)0?′+′:′-′);
             cout<(T)0? y:-y)<<″i″<       }
   };
   void main( ){
         Tclassa(10.5,-5.8);
         a.pr( );
         Tclassb(10);
         b.pr( );
   }
33.写出下面程序的输出结果:
   # include
   class Test{
         private:
               static int val;
               int a;
         public;
               static int func( );
               void sfunc(Test &r);
   };
   int Test::val=200;
   int Test::func( )
   {
         return val++;
   }
   void Test::sfunc(Test &r)
   {
         r.a=125;
         cout<<″          Result3=″<   }
   void main( )
   {
         cout<<”Result1=”<         Test a;
         cout<<”Result2=”<         a.sfunc(a);
   }
34.写出下面程序的输出结果:
   # include
   class A
   {
         public;
           virtual void print( ){cout<<”This is class A printing.”<   };
   class B:public A
   {
         public:
           void print( ){ }
   };
   class C:public B
   {
         public:
           void print( ){cout<<“This is class C printing.”<   };
   void show(A&a)
   {
         a.print( );
   }
   void main( )
   {
         A a;
         B b;
         C c;
         show(a);
         show(b);
         show(c);
   }
35.写出下面程序的输出结果:
   # include
   class A{
         public:  A( ){a=0;}
                  A(int i){a=i;}
                  void Print( ){cout<                  int Geta( ){return a;}
         private:int a;
   };
   class B:public A{
         public:B( ){b=0;}
                B(int i,int j,int k);
                void Print( );
        private:int b;
                A aa;
   };
   B::B(int i,int j,int k):A(i),aa(j){b=k;}
   void B::Print( ){
           A::Print( );
           cout<   }
   void main( ){
        B bb[2];
        bb[0]=B(1,2,5);
        bb[1]=B(3,4,7);
        for(int i=0;i<2;i++)
        bb[i].Print( );
   }
36.写出下面程序的输出结果:
   # include
   class Location{
           int X,Y;
   public:
         void init(int=0,int=0);
         void valueX(int val){X=val;}
         int valueX( ){return X;}
         void valueY(int val){Y=val;}
         int valueY( ){return Y;}
   };
   void Location::init(int initX,int initY)
   {
        X=initX;
        Y=initY;
   }
   void main( )
   {
        Location A,B;
        A.init( );
        cout<        A.valueX(5);
        cout<        B.init(6,2);
        B.valueY(4);
        cout<   }

 

Tags:自学考试 历年真题
】【打印繁体】 【关闭】 【返回顶部
上一篇浙江省2011年7月自学考试模具软件.. 下一篇浙江省2003年1月自考面向对象程序..

网站客服QQ: 960335752 - 14613519 - 48225117