计科系C++试卷_第1页
计科系C++试卷_第2页
计科系C++试卷_第3页
计科系C++试卷_第4页
计科系C++试卷_第5页
全文预览已结束

下载本文档

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

文档简介

精品文档商丘师范学院20102011学年度第一学期期终考试计算机科学系 计算机科学与技术专业07级本科、10专升本(1、2)C+语言程序设计试卷题 号一二三四总分总分人得 分说明:本试卷共5页、四道大题,答卷一律在试卷规定处进行,答在其它处不得分。得 分评卷人一、选择题(以下每题有四个选项可供选择,请选择最正确的一个答案,将标号填入下面的表格内。)(每题2分,共40分)12345678910111213141516171819201.下面哪些是合法的标识符 ( ) (A)default (B)main (C)s_witch (D)if2.已知枚举类型声明语句为:Enum ColorWhite,Yellow,Green=6,Red,Black=9;则下列说法中错误的是( )(A)枚举常量Yellow的值为1 (B)枚举常量Red的值为8(C)枚举常量Black的值为9 (D)枚举常量White的值为03.按照标识符的要求, 下列哪些符号不能组成标识符 ( )(A)连接符 (B)下划线 (C)大小写字母 (D)数字字符来源 4. 执行下列语句后,输出字符“*”的个数是 ( )for(int i=1;i50;i+=3) cout*; (A)17 (B)20 (C)26 (D)505.若执行完以下语句,运行结果是下面哪个 ( )int i=0,j=3;if(i+|j+)couti,jendl;(A) 1,4 (B) 0,4 (C) 1,3 (D) 0,36.关于静态变量,下面错误的是 ( )(A)静态变量只初始化一次(B)静态变量如没有赋初值,默认为0(C)静态变量是用时分配空间,不用就释放 (D)静态变量的生存期是从编译开始一直到程序运行结束 7表达式23|69的值是 ( )(A)1(B)2 (C)0 (D)68在int a=5,*p=&a;中,*p的值是( ) (A)变量a的地址值 (B)无意义 (C)变量p的地址值 (D)5 9已知函数f的原型是void f(int *a,long &b);,变量v1、v2的定义是 int v1;long v2;下面调用语句中正确的是( )(A)f(v1,&v2); (B)f(v1,v2); (C)f(&v1,&v2); (D)f(&v1,v2);10下列有关类成员的叙述中,正确的是 ( )(A)友元函数只能是类的成员函数(B)类成员中数据必须声明为私有的(C)类成员函数必须声明为公有的(D)类的静态数据成员的初始化只能在类外11以下关键字不能用来声明类的派生方式的是 ( )(A)public (B) static (C)protected (D)private12有如下类定义:class Pointprivate:static int how_many;_how_many=0;要初始化Point类的静态成员how_many,下划线处应填入的内容是 ( )(A)int (B)static int (C)int Point: (D)static int Point:13已知Complex是一个类,c1是Complex的一个对象,下列以非成员函数形式重载的运算符函数原型中,正确的是 ( )(A)Complex operator+(Complex v,int i);(B)Complex operator+(int i);(C)Complex operator+(Complex v);(D)Complex operator+(Complex v=c1,int i=0);14chnt的长度是 ( )(A)4 (B)3(C)5 (D)615对于一个类定义,下列叙述中错误的是 ( )(A)如果没有定义拷贝构造函数,编译器将生成一个缺省的拷贝构造函数。(B)当对象是动态对象时,析构函数不能省略。(C)如果没有定义析构函数,编译器将生成一个缺省的析构函数。(D)如果已经定义了构造函数和拷贝构造函数,编译器会覆盖默认的构造函数和拷贝构造函数。16如果派生类以private方式继承基类,则原基类的protected成员和public成员在派生类中的访问属性分别是 ( )(A)public和public(B)public和protected(C)protected 和public (D)private 和 private 17int a33=1,3,3,4,2,3;其中a02的值为 ( )(A)1(B)3(C)0 (D)2 18若有说明:int a101,2,3,4, *p=&a1; y=*+p的值是()(A)1(B)2(C)3 (D)419有类A,有如下声明:A a2,*p,调用构造函数次数是 ( )(A)1 (B)2 (C)0 (D)420下列有关抽象类和纯虚函数的叙述中,错误的是 ( )(A)拥有纯虚函数的类是抽象类,不能用来定义对象(B)抽象类的派生类若不实现纯虚函数,它也是抽象类(C)只有有纯虚函数的类才是抽象类(D)纯虚函数没有函数体得 分评卷人二、判断题:(正确的打“”,不正确的打“”,答案写在题目后面的括号内)(每小题1分,本题满分10分)21C+程序设计中,定义性声明可以不放在一起。()22C+程序设计中,多行注释可以嵌套。()23char a10;couta+;。()24用数组元素作函数参数时传递属于值传递。()25int *p;p=0;。()26类A中的成员函数是类B的友元函数,这个类不必先定义,只声明就可以了。 ()27类中的常量只能在构造函数的初始化列表进行初始化。()28类A的对象作为类B的数据成员,其值的初始化在类B外。( )29在C+中,结构体类型也可以有成员函数,和类没有区别。()30int i;couti;输出结果i的值是0。()得 分评卷人三、写出下列程序运行结果(本题共4小题,每小题5分,满分共20分).31#include using namespace std;void main()int i,j,&m=i,n;i=8;j=10;n=(+i)+(+j)+m;couti j m nendl;m=9;cout+iendl;运行结果为:32#includeusing namespace std;void main()int a,b;void swap(int *,int *);cinab;couta=ab=bendl;swap(&a,&b);couta=ab=bendl;void swap(int *x,int *y)int *z;z=x;x=y;y=z; 假如输入:8 7 ,运行结果为:33#include using namespace std;int c=5;int f(int a)int b=0;b+;c+;return a+b+c;void main( )int a=2,i;for(i=0;i2;i+)coutf(a) cendl;运行结果为:34#include using namespace std;class Aint a;public:A(int a1=0):a(a1)cout调用了构造函数Aendl;void disp()coutaendl;class B :public Aint b; public:B(int b1=0 ):b(b1),A(b1) cout调用了构造函数Bendl;void disp()A:disp( );coutbendl;int main( )A aa(4);B b1(6);b1.disp( );return 0;运行结果为:得 分评卷人四、编写程序(本题共2小题,每小题15分,满分共30分)35(15分)设计一个复数类complex,数据成员包括实部(real)和虚部(imag),类内有带有默认参数的构造函数。程序要求完成以下功能:(1)将运算符“+” 重载为适用于两个复数相加的成员函数。(2)重载单目运算符+(前加)为类的成员函数。(3)利用成员函数void dsip( )输出数据(3)主函数中定义3个复

温馨提示

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

评论

0/150

提交评论