统考试卷题 含答案想通过做题而提高自己的同学请收集下来_第1页
统考试卷题 含答案想通过做题而提高自己的同学请收集下来_第2页
统考试卷题 含答案想通过做题而提高自己的同学请收集下来_第3页
统考试卷题 含答案想通过做题而提高自己的同学请收集下来_第4页
统考试卷题 含答案想通过做题而提高自己的同学请收集下来_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河南大学计算机与信息工程学院2007-2008学年第二学期期末自测高级语言程序设计试卷一、选择题1、在C+语言中,自定义的标识符( D)A)能使用关键字并且不区分大小写B)不能使用关键字并且不区分大小写C)能使用关键字并且区分大小写D)不能使用关键字并且区分大小写2、定义如下变量:int i=2,j=3;,则i/j的结果为(B)A)0.66667 B)0 C)0.7 D)0.6666663、sizeof(double)的值为(A)A)整型 B)双精度 C)字符 D)不合法4、下列运算符中,优先级最低的是(D)A)! B)+ C)/ D)=5、在for(int x=0,y=0;!x&&a

2、mp;y<=5;y+)语句中,执行循环的次数是( C)A)0 B)5 C)6 D)无次数6、在int a=10,*p=&a;语句中,p的值是:(C)A)10 B)p的地址值 C)a的地址值 D)无意义7、当一个函数无返回值时,函数的类型应为(B)A)任意 B)void C)int D)char8、定义如下一维数组:int a5,*p=a;,则下列描述错误的是(B)A)表达式p=p+1是合法的 B)表达式a=a+1是合法的C)表达式p-a是合法的 D)表达式a+2是合法的9、设x和y均为bool量,则x&&y为真的条件是(D)A)它们均为假 B)其中一个为假C)其中

3、一个为真 D)它们均为真10、两个变量定义不能同名,是因为(A)A)这两个变量定义在同一作用域中B)这两个变量定义在同一文件中C)一个定义在main函数中,一个定义在子函数中D)以上说法均不正确11、下面有关重载函数的说法中正确的是(C)A)重载函数必须具有不同的返回值类型B)重载函数形参个数必须不同C)重载函数必须有不同的形参列表D)重载函数名可以不同12、若有以下函数调用语句:f(m+n,x+y,f(m+n,z,(x,y);在此函数调用语句中实参的个数是(D)A)6 B)5 C)4 D)313、下列关于构造函数的描述中,错误的是(D)A)构造函数可以设置默认参数B)构造函数在定义类对象时自

4、动执行C)构造函数可以是内联函数D)构造函数不可以重载14、下列描述中,正确的是(B)A)虚函数是一个static 类型的成员函数;B)抽象类是指具有纯虚函数的类;C)虚函数是一个非成员函数D)抽象类可以说明其对象15、已知“+”运算符以成员形式重载,则表达式obj1+obj2被c+编译器解释为(A )A)obj1.operator+(obj2);B)obj2.operator+(obj1);C)operator+(obj1,obj2);D)+(obj1,obj2);二、程序填空1、下面程序将数组a中的数据按逆序存放。#include<iostream.h>const int M=

5、8void main()int aM,i,j,t;   for(i=0;i<M;i+)cin>>ai   i=0;j=M-1;   while(i<j)   t=*(a+i);ai=aj;aj =t;   i+;j-;      for(i=0;i<M;i+)   cout<<*(a+i)<<;   2、请补充完整下面类说明中的运算符重载函数。#incl

6、ude<iostream.h>class Sample    int n;    public:        Sample()        Sample(int i) n=i;        (4)(Sample s)    (5)&

7、#160;   (6)        void disp()cout<<"n="<<n<<endl; ;3、在划线处填上适当的语句,完成下列程序。#include <iostream.h>class Pointpublic:Point(double a,double b,double c)X=a;Y=b;Z=c;double Getx( )return X;double Gety( )return Y;double Getz( )retu

8、rn Z;private:double X;protected: double Y,Z;;class Line:public Point public:Line(double a,double b,double c,double d):Point(a,b,c) K=d;void show() cout<<Getx()<<endl;cout<<Gety()<<" "<<Y<<endl;cout<<Getz()<<" "<<Z<<endl;

9、cout<<K<<endl;private:double K;void main()Line obj(1.2,3.4,5.6,7.8);obj.show();三、读程序,写出运行结果1、 #include<iostream.h> void print(int w); void main()运行结果:1,2,2,3,3,3, print(3); void print(int w) int i; if ( w!=0 ) print(w-1); for(i=1;i<=w;+i) cout<<w<< ','; cout

10、<< endl; 2、 #include <iostream.h>void func();int n=1; void main() static int a; int b= -10; cout <<"a:" <<a<<" b:" <<b<<" n:" <<n <<endl; b+=4;func(); cout <<"a:" <<a<<" b:" <

11、<b<<" n:" <<n <<endl;运行结果:a:0 b:-10 n:1a:4 b:10 n:13a:0 b:-6 n:13a:6 b:10 n:35 n+=10; func();void func() static int a=2; int b=5; a+=2;n+=12;b+=5; cout <<"a:" <<a<<" b:" <<b<<" n:" <<n <<endl;3、 #i

12、nclude <iostream.h>#include <string.h>class Studentprotected:char name40;int id;public:Student(char* pName="no name",int ssId=0)id = ssId;strcpy(name,pName);cout<<"Constructing new student "<<pName<<endl;Student(Student& s) cout <<"Con

13、structing copy of "<<<<endl; strcpy(name,"copy of "); strcat(name,); id=s.id; Student( ) cout <<"Destructing "<<name<<endl; 运行结果:Constructing new student RandyCalling fn()Constructing copy of RandyIn function fn()Destructing copy of

14、RandyReturned from fn()Destructing Randy;void fn(Student s1) cout<<"In function fn()n";void main( ) Student randy("Randy",1234); cout<<"Calling fn()n"; fn(randy); cout<<"Returned from fn()n";4、 #include<iostream.h>class Aprivate: int x,

15、y; public: virtual void show(int a=0)cout<<"A:"<<endl;class B:public A public: virtual void show()cout<<"B:"<<endl;class C:public B public: void show(int b=0)cout<<"C:"<<endl;class D:public C public: void show(int b=0)cout<<&quo

16、t;D:"<<endl;运行结果: B: C: D: void fn(A& a)a.show();void main() B b;C c;D d; fn(b);fn(c);fn(d)5、 #include<iostream.h>class OBJ1 public: OBJ1() cout <<"OBJ1n"; ;class OBJ2 public: OBJ2() cout <<"OBJ2n"; ;class Base1 public: Base1() cout <<"

17、Base1n"; ;class Base2 public: Base2() cout <<"Base2n"; ;class Base3 public: Base3() cout <<"Base3n"; ;class Base4 public: Base4() cout <<"Base4n"; ;class Derived :public Base1, virtual public Base2, public Base3, virtual public Base4 protected: OB

18、J1 obj1; OBJ2 obj2; public: Derived() :Base4(), Base3(), Base2(), Base1(), obj2(), obj1() cout <<"Derived ok.n";运行结果: Base2 Base4 Base1 Base3 OBJ1 OBJ2 Derived ok. This is ok. ;void main() Derived aa; cout <<"This is ok.n";四、根据题目,编写程序。(共20分)1、 写两个函数,来完成求两个数的最大公约数和最小公倍数。2、 设计程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论