Word版可编辑-春季学期C程序设计作业题目及答案精心整理.doc_第1页
Word版可编辑-春季学期C程序设计作业题目及答案精心整理.doc_第2页
Word版可编辑-春季学期C程序设计作业题目及答案精心整理.doc_第3页
Word版可编辑-春季学期C程序设计作业题目及答案精心整理.doc_第4页
Word版可编辑-春季学期C程序设计作业题目及答案精心整理.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

2013 年春季学期年春季学期 C 程序设计程序设计 作业作业 作业提交格式要求 请同学们把答案集中单独写在一个 doc 文档中 作为附件上传 不不 要把答案直接填写在题目的空中要把答案直接填写在题目的空中 特规定格式如下 一 ABCDD AAAAA 二 题号 12345678910 结果 三 1 BeiJing ShangHai 2 x 8 y 7 3 r k i j 90 以上只是举例 不是正确的输出结果 请按上述规定书写和提交作业结果 不符合以不符合以 上规定的作业将作为上规定的作业将作为 0 分处理分处理 鼓励独立完成作业 严惩抄袭 鼓励独立完成作业 严惩抄袭 第一部分 第一部分 C 第第 1 7 8 9 章 章 一 单选题一 单选题 BDBCD DCDCB 1 C 是从早期的 C 语言逐渐发展演变来的 与 C 语言相比 它在求解问题方法上最大 的改进是 A 面向过程 B 面向对象 C 安全性 D 复用性 2 下列关于 this 指针的叙述中 正确的是 A 任何与类相关的函数都有 this 指针 B 类的成员函数都有 this 指针 C 类的友元函数都有 this 指针 D 类的非静态成员函数才有 this 指针 3 若有以下类 Z 声明 函数 fStatic 的正确定义是 class Z int a public void fStatic Z A void Z fStatic Z B void Z fStatic Z C void Z fStatic Z D void Z fStatic Z 4 在 C 中 关于下列设置缺省参数值的描述中 是正确的 A 不允许设置缺省参数值 B 只能在函数的定义中指定参数的缺省值 C 在指定了缺省值的参数右边 不能出现没有指定缺省值的参数 D 设置缺省参数值时 必须全部都设置 5 关于友元函数的描述中 错误的是 A 友元函数说明在类体内 B 友元函数不是成员函数 C 友元函数必须用对象来引用D 友元函数可以直接访问类中的私有成员 6 对于类 下面哪个是不正确的 A 类是对象的设计蓝图 B 使用关键字 Class 创建类结构 C 类被声明后 类名成为类型名并且可以用来声明变量 D 类与结构体相同 它们之间没有区别 7 下列是构造函数的特点 是错误的 A 构造函数是一种成员函数 它具有一般成员函数的特点 B 构造函数的名称与其类名相同 C 构造函数必须指明其类型 D 一个类中可以定义一个或多个构造函数 8 已知 p 是一个指向类 A 数据成员 m 的指针 a 是类 A 的一个对象 在给 m 赋值为 5 的下列表达式中 是正确的 A a p 5 B a p 5 C a p 5 D a p 5 9 下面对静态数据成员的描述中 正确的选项是 A 静态成员可以在类体内进行初始化 B 静态数据成员不可以被类的对象调用 C 静态数据成员可以直接用类名调用 D 静态数据成员不可以直接用类名调用 10 下列关于 new 运算符的描述中 错误的是 A new 运算符组成的表达式的值是地址值 B 创建对象时不调用构造函数 C 用它创建的对象须用 delete 来删除 D 可用它来创建动态的对象和对象数组 二 判断题二 判断题 TFFTT FFTFF 1 子对象的初始化可以不放在该类的构造函数中 T 2 如果一个类中没有定义任何构造函数 则该类的对象便无法初始化 F 3 构造函数和析构函数都不能重载 F 4 如果一个成员函数只存取一个类的静态数据成员 则可将该成员函数说明为静态 成员函数 T 5 构造函数和析构函数都是系统自动调用的 T 6 可以在类的构造函数中对静态数据成员进行初始化 F 7 友元函数是成员函数 它可以访问类中私有成员 F 8 对象数组的元素必须是同一个类的对象 T 9 用 class 定义的类中 默认的访问权限是公有的 F 10 运算符 new 可以创建变量或对象 也可以创建数组 F 三 写出下列程序的输出结果 三 写出下列程序的输出结果 1 include using namespace std class Test public Test cout constructor of Test endl Test a int main cout main start endl Test b return 0 输出结果 construction of Test main start constructor of Test 2 include class Student public Student int i 0 double j 0 num i score j void print cout num score endl friend void fun Student private int num double score void fun Student rs score 80 rs print void main Student s1 1002 50 s2 s1 print fun s2 输出结果 1002 50 1100 80 3 include class A private int a public A int aa a aa A cout Destructor A a endl class B public A private int b public B int aa 0 int bb 0 A aa b bb B cout Destructor B b endl void main B obj1 5 obj2 6 7 return 输出结果 Destrutor B 7 Destrutor A 6 Destrutor B 0 Destrutor A 5 4 include class A public A int i 0 m i cout Constructor called m endl void Set int i m i void Print const cout m endl A cout Destructor called m endl private int m void main const int N 5 A my my N my Print 输出结果 Construtor called 0 Construtor called 5 5 Destrutor called 5 Destrutor called 5 第二部分 第二部分 C 第第 10 11 章 章 一 单选题一 单选题 CAADD ADA 1 在 C 中 类与类之间的继承关系具有 A 自反性 B 对称性 C 传递性 D 反对称性 2 int Func int int 不可与下列哪个函数构成重载 A INT FUNC INT INT INT B DOUBLE FUNC INT INT C DOUBLE FUNC DOUBLE DOUBLE D DOUBLE FUNC INT DOUBLE 3 关于基类和派生类的描述中 错误的是 A 基类和派生类间是包含关系 B 派生类中可以定义自己的成员 C 基类成员在派生类中的访问权限与继承方式有关 D 一个派生类可以从一个基类派生 也可以从多个基类派生 4 下列对运算符重载的描述中 正确的是 A 运算符重载可以改变结合性 B 运算符重载可以改变优先级 C 运算符重载可以改变操作数的个数 D 运算符重载不改变优先级和结合性 5 下列函数中 不能重载 A 成员函数 B 非成员函数 C 构造函数 D 析构函数 6 当一个类某个函数被说明为 virtual 时 该函数在该类的所有派生类中 A 都是虚函数 B 只有 被重新说明时才识虚函数 C 只有被重新说明为 virtual 时才是虚函数 D 都不是虚函数 7 实现运行时的多态性采用 A 重载函数 B 构造函数 C 析构函数 D 虚函数 8 关于动态联编的下列描述中 是错误的 动态联编是在编译时确定操作函数的 动态联编是以虚函数为基础的 动态联编是在继承的前提下的一种多态性 动态联编时要求类的继承是公有的 二 判断题二 判断题 FFTTF FFTTF 1 C 支持运算符重载 所有运算符都可以重载 F 2 在公有继承中 基类中的公有成员和私有成员在派生类中都是可见的 F 3 基类中的保护成员在其派生类中可以访问 而派生类对象不可访问 T 4 运算符重载不能改变运算符的运算优先级 结合方向 T 5 派生类的对象不可以给基类对象赋值 F 6 静态联编是在运行时进行的 动态联编是在编译时进行的 F 7 派生类的构造函数中应包含直接基类的构造函数 F 8 私有继承方式下 基类中公有成员和保护成员在派生类中都是私有的 T 9 抽象类不能定义对象 可以定义对象引用和对象指针 T 10 一个对象在创建时 总是要被初始化的 F 三 写出下面程序的输出结果 三 写出下面程序的输出结果 1 include class BASE public void get int i int j int k int l a i b j x k y l void print cout a a t b b t x x t y y endl int a b protected int x y class A public BASE public void get int i int j int k int l BASE obj3 obj3 get 50 60 70 80 obj3 print a i b j x k y l u a b obj3 a v y x obj3 b void print cout a a t b b t x x t y y endl cout u u t v v endl private int u v void main BASE obj1 A obj2 obj1 get 10 20 30 40 obj2 get 30 40 50 60 obj1 print obj2 print 输出结果 a 50 b 60 x 70 y 80 a 10 b 20 x 30 y 40 a 30 b 40 x 50 y 60 u 120 v 70 2 include class A public A int i int j a1 i a2 j virtual void Print cout a1 a2 endl protected int a1 a2 class B public A public B int i int j A i j void Print cout a1 a2 endl void fun A void main int m 10 n 2 B b m n fun b 输出结果 20 3 include class B public B B int i b i virtual void virfun cout B virfun called n private int b class D public B public D D int i int j B i d j private int d void virfun cout virfun void main B pb new B fun pb D pd new D fun pd 输出结果 D virfun called 第三部分 第三部分 VC 一 单选题一 单选题 CDBDB BADDC 1 下面关于API的描述错误的是 A API是用来控制Windows各个元素的外观和行为的一套预定义的Windows函数 B 创建应用程序 打开窗口 描绘图形都要调用API函数 C Windows操作系统构建在API函数上 D 早期 windows程序员编写程序只能使用API函数 2 下面关于API的描述错误的是 A API函数构建在Windows操作系统上 B 创建应用程序 打开窗口 描绘图形都要调用API函数 C API是用来控制Windows各个元素的外观和行为的一套预定义的Windows函数D Windows应 用程序构建在API函数上 D 现在 Windows程序员编写程序只能使用API函数 3 下面描述句柄的语句 错误的是 A 句柄是WINDOWS用来标识被应用程序所建立或使用的对象的唯一整数 B 句柄中存放了Windows对象的数据 C 句柄能区分不同的应用程序对象 D 句柄具有多种类型 4 在Windows中 窗口句柄的类型是 A HINSTANCE B HFONT C HDC D HWND 5 在Windows中 字体句柄的类型是 A HINSTANCE B HFONT C HDC D HWND 6 对消息循环描述错误的是 A GetMessage函数在消息队列非空时 取得消息并返回 B 若GetMessage取得的是WM CLOSE消息则返回0 否则返回非0 C GetMessage函数在消息队列为空时 将一直空闲 D DispatchMessage 将当前消息发送到对应的窗口过程中去 7 下面四个MFC类中哪一个是管理MFC应用程序的 A CWinApp B CMainFrame C CDocument D CView 8 下列类中不属于MFC框架基本类的是 A CWinApp B CFrameWnd C CView D CObject 9 关于GDI的描述错误的是 A GDI指图像设备接口 B GDI 负责用户和绘图程序之间的信息交换 C GDI控制在输出设备上显示图形或文字 D 采用了GDI 编程时还需关心显示卡或打印机的驱动程序 10 关于设备上下文的描述错误的是 A 设备上下文是一种包含有关某个设备的绘制属性的Windows数据结构 B 设备上下文允许在Windows中进行与设备无关的绘制 C 设备上下文可以用于绘制到屏幕 打印机但不能绘制到图元文件 D 设备上下文对象封装了绘制线条 形状和文本等的 Windows API 二 填空题二 填空题 1 SendMessage 和 PostMessage 都会向窗体发送一个消息 但 SendMessage 将一条消息 发送到指定窗口 立即处理 而 PostMessage 将一条消息投递到指定窗口的消息队列 不需要立即处理 2 使用 MFC AppWizard 产生的应用程序的类型主要包括 单文档应用程序 多文档 应用程序 基于对话框的应用程序 3 VC 的工作区窗口包含 3 个视图 分别是 类视图 资源视图 文件视 图 4 封装画刷的 GDI 类是 CBrush 封装画笔的 GDI 类是 CPen 封装字体的 GDI 类是 CFont 封装位图的 GDI 类是 CBitmap 5 Windows应用程序的消息来源主要包括 系统消息 和 自定义消息 6 Windows 应用程序的消息按处理方式主要包括 命令消息 标准消息 和 通 告消息 7 在 Visual C 中 创建控件有两种方法 一种是 静态创建 另一种是 动态创 建 8 按钮控件对应 CButton 类 静态文本控件对应 CStatic 类 单选和复选按 钮对应 CCheckListBox 类 9 在 MFC 的众多类中 CObject 是所有 MFC 类的原始基类 10 消息处理函数 OnLButtonDown 响应 左键按下 消息 三 简答题三 简答题 1 什么是句柄 它在 Windows 程序中的作用是什么 答 句柄 是整个 windows 编程的基础 一个句柄是指使用的一个唯一的整数值 即一个 四字节长的数值 来标志应用程序中的不同对象和同类

温馨提示

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

评论

0/150

提交评论