欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    东南大学2009-2010学年C++(下)期末考试模拟试题.doc

    • 资源ID:35592345       资源大小:29.50KB        全文页数:9页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    东南大学2009-2010学年C++(下)期末考试模拟试题.doc

    2008-2009学年C+(下)期末考试模拟试题一、选择题(每题2分,共30分)1. 下列程序段的运行结果是( )。char c=”tv0willn”;cout<<strlen(c);A. 4B. 3C. 9D. 字符串中含有非法字符,输出结果不确定2. 已知定义类A,该类的构造函数的参数都没有缺省值。执行语句:A a1(2) ,a2(1,2), *p=new A3;则自动调用该类缺省的构造函数的次数为( )。A. 1B. 2C. 3D. 53. 下列叙述正确的是( )。A. 虚函数是一个static类型的成员函数B. 虚函数是一个非成员函数C. 包含虚函数的基类为虚基类D. 包含存虚函数的基类为抽象类4. 下列关于赋值兼容性规则的叙述不正确的是( )。A. 派生类的对象可以赋值给基类的对象B. 基类的对象可以赋值给派生类的对象C. 派生类的对象可以初始化基类对象的引用D. 可以将派生类对象的地址赋值给其基类的指针变量5. 设有定义int a3=1,3,5,7,9,11,13,15,17;int *p=a2;则*(p+1)的值为( )。A. 15B. 7C. 14B. 66. C+中多态性包括两种:编译时的和运行时的。运行时多态性是通过( )实现的。 函数重载 运算符重载 类继承关系 动态链接 虚函数A. 和 B. 和 C. 和 D. 和7. 关于动态内存分配,对delete运算符的下列说法中,( )是错误的。A. 应与new运算符配合使用。B. 可以在类的成员函数中使用。C. 对同一个指针变量可任意多次使用该运算符。D. 若a是一个二维数组,则delete a; 可删除a所占用的存储空间。8. 设int x; int *p2=&x, *p1=&x; *p1=a; *p2=*b; 则变量a和b的类型分别是( )。A. int 和int B. int *和int C. int和int *D. int *和int *9. 下列关于成员函数的叙述不正确的是( )。A. 成员函数一定是内联函数B. 成员函数可以重载C. 成员函数可以设置参数的默认值D. 成员函数可以是静态的10. 以下不属于类的访问权限的是( )。A. publicB. protectedC. staticD. private11. 若要使用ifstream流定义一个流对象并打开一个文件时,应在程序开始使用#include命令,使之包含( )。A. iostream.hB. fstream.hC. stdio.hD. strstream.h12. 下列叙述不正确的是( )。A. 对象之间可以相互赋值B. 对象可以用作函数参数C. 对象可以用作数组的元素D. C+中可以有指向对象的指针13. C+中不能被派生类继承的是( )。A. 虚函数B. 析构函数C. 静态成员函数D. 运算符重载函数14. 不属于构造函数的特点是( )。A. 具有与类名相同的函数名B. 返回类类型返回值C. 允许重载D. 在定义类的对象时自动调用15. 类型相同的两个指针不能进行的运算是( )。A. +B. -C. =D. =二、填空题(每题2分,共20分)1. 函数参数传递方式有三种,分别为:值传递、地址传递和( )。2. 面向对象的程序设计的三大特征是:( )、继承性和多态性。3. 假定A为一个类,则语句A(A &x);是此类( )构造函数的原型说明。4. 在类的继承与派生中,缺省的继承方式是( )。5. C+的两种多态性分别是( )多态性和( )多态性。6. 运算符重载有两种实现方法,一种是通过友元函数来实现,另一种通过( )函数来实现。7. 根据数据的组织形式不同,可将文件分为二进制文件和( )文件。8. 若希望类中的成员只能被该类的成员函数及该类的派生类的成员函数访问,则应加上访问权限:( )。9. 假定类A中有一个公用属性的静态数据成员b,在类外不通过对象名访问该成员b的写法为( )。三、阅读程序题(每题5分,共30分)1. 下列程序运行结果为( )。 #include <iostream.h>#include <string.h>char s(char *w,int y)char t, *s1, *s2;s1=w;s2=w+y+5;while(s1>s2)t=*s1+;*s1=*s2-;*s2=t;return *s1;return *s1+2;void main(void)char *p="123"cout<<s(p,strlen(p);2. 下列程序的输出结果是( )。#include <iostream.h>class Apublic:int X;A(int x)X=x*x;class Sint x;A a;public:S(int b,int c):a(c)x=b+a.X;void show()cout<<"x="<<x<<endl;void main(void)S s1(2,3);s1.show();3. 下列程序的运行结果是( )。#include <iostream.h>class Apublic:int n;A()cout<<"A"class B:public Apublic:B()cout<<"B"class C:public BA a;public:C():a(),B()cout<<"C"void main(void)C c;4. 下列程序的运行结果是( )。#include <iostream.h>class Baseprotected:int *p;public:Base(int a=0)p=new int (a);Base()delete p;virtual void print()cout<<"p->"<<*p<<endl;class Derived:public Basestatic int y;public:Derived(int b=0)*p=b;y+;void print()cout<<*p<<','<<y<<endl;int Derived:y=100;void main(void)Derived d(50);Base *pb=&d;pb->print();Derived d1(20);d1.print();5. 下列程序的运行结果是( )#include <iostream.h>class Bint a,b;public:B(int aa=0,int bb=0)a=aa;b=bb;void operator +();void operator +(int);void show()cout<<a<<'t'<<b;void B: operator +()a+=2;b+=5;void B: operator +(int)a+=5;b+=2;void main(void)B x(3,5);x+;x.show();6. 下列程序的运行结果是( )。#include <iostream.h>class Apublic:A(int n)num=n;int compare(A a)if(this->num=a.num)return 1;else return 0;private:int num;void main(void)A aa(5);A bb(10);A cc(5);cout<<pare(bb)<<'t'cout<<pare(aa)<<endl;四、完善程序(每空2分,供20分)1. 下面的程序中定义了圆类Circle、长方形类Rect、圆角长方形类RoundRect,其中RoudRect共有继承于Circle和Rect类。试完成程序。#include <iostream.h>#include <string.h>class Circledouble radius;public:Circle(double r): double area()return 3.14*radius*radius;class Rectdouble width, height;public:Rect(double w, double h)width=w; height=h;double area()return height*width;class RoundRect: public Circle, Rectchar color5;public:RoundRect( ):Circle(r),Rect(w,h)strcpy(color,c);char *getcolor()return color;void main(void)RoundRect rr(0.8,1,0.25,"白色");cout<<rr.getcolor()<<endl;2. 下列程序通过重载运算符“*”,直接实现两个一维数组对应元素相乘运算。设数组a,b分别为:int a10=1,2,3,4,5,6,7,8,910;int b10=1,2,3,4,5,6,7,8,9,10;相乘后的结果为1,4,9,16,25,36,49,64,81,100。同时通过重载运算符“=”,直接实现两个一维数组的赋值运算。试完善程序。#include <iostream.h>#include <string.h>class Aint x10;public:A()for(int i=0;i<10;i+)xi=0;A(int *p)for(int i=0;i<10;i+) A operator *(A a)A t;for(int i=0;i<10;i+) return t;A operator =(A a)for(int i=0;i<10;i+) return *this;void show()for(int i=0;i<10;i+)cout<<xi<<'t'void main(void)int a10=1,2,3,4,5,6,7,8,9,10;int b10=1,2,3,4,5,6,7,8,9,10;A a1(a),a2(b),a3;a3=a1*a2;a3.show();3. 下面的程序的功能是比较两个字符串是否相等,若相等返回1,否则返回0。请完成程序。#include <iostream.h>int f(char *s1, char *s2)char *p=s1,*q=s2;while( )q+;p+;return ( );void main(void)char s1100,s2100;cin.getline(s1,100);cin.getline(s2,100);cout<<f(s1,s2);4. 下列函数的功能是将一个新生成的链表按照从小到大的顺序插入到现有的链表中,请完成函数。struct nodeint data;node * next;node * Insert(node *head, node *p)/将p指向的结点插入到head代表的链表中node *p1,*p2;if(head=0)/空链表,插入到链表首部head=p; p->next=head; return head;if(head->data>=p->data)/非空链表,p的数据项比首节点的数据项小,插入到链首p->next=head; head=p; return head;p2=p1=head;while( p2->next&&p2->data<p->data )/找到要插入的位置p1=p2;p2=p2->next;if(p2->data<p->data)/p代表的结点的数据项最大,插入到表尾p2->next=p;p->next=0;else/插入到p1和p2指向的结点之间 p->next=p2;p1->next=p; 五、上机编程题(每题50分,共100分)1. 建立一个str类,完成对字符串循环左移的功能。即从第二个字符开始,以后的每个字符都依次前移一个字符,而原来的第一个字符放在串中的最后一个字符。当要平移m个字符时,则要进行m次的循环左移。例如:“ABCD”循环左移2个字符后为“CDAB”。要求如下:(1)私有数据成员char * w;指向待左移字符串。int m, len; 分别用于存储循环左移的次数及字符串的长度。(2)公有成员函数构造函数str(char *p, int n, int k):初始化各数据成员。void move():循环左移。void show():输出字符串数据成员(3)编写一个程序测试该类,使用以下测试数据:a=”ABCD”,左移3个字符。要求输出字符串。2. 请将压缩包中的文本文件in.dat的内容读入到数组A33中,并将转置后的数组A的内容写入到文本文件out.dat中。请完成程序。

    注意事项

    本文(东南大学2009-2010学年C++(下)期末考试模拟试题.doc)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开