Windows程序设计复习资料(完整答案)
《Windows编程(C)》考试复习资料

《Windows编程(C)》考试复习资料一、单项选择题1.下面()是合法的变量名。
A.accp5.0B._CharpC.99D.Main2.下面这段代码的输出为()A.进入了ifB.进入了if,进入了eleC.进入了eleD.进入了if,进入了eleif,进入了eleintyear=2046;if(year%2==0){Conole.WriteLine(\进入了if\);}eleif(year%3==0){Conole.WriteLine(\进入了eleif\);}ele{Conole.WriteLine(\进入了ele\);}Conole.ReadLine();3.下面程序的输出结果是()A)1B)2C)4.5D)4taticvoidMain(tring[]arg){inta=5,b=2;float某=4.5f,y=3.0f,u;u=a/3+b某某/y+1/2;Conole.WriteLine(\,u);Conole.ReadLine();}4.运行下面这段代码的结果为()A.去上课B.去上课,聚餐,逛街,睡觉C.什么都不输出D.编译出错tringday=\星期一\;witch(day){cae\星期一\:cae\星期三\:cae\星期五\:Conole.Write(\去上课\);cae\星期六\:Conole.Write(\,聚餐\);cae\星期日\:Conole.Write(\,逛街\);default:Conole.WriteLine(\,睡觉\);}Conole.ReadLine();5.分析下面这段代码,执行后count的值为()inti,j,count=0;for(i=0;i<4;i++)for(j=0;j<6;j++){count++;}A.15B.24C.20D.216.程序运行后的输出结果是()第1页共54页A)1,1,2B)2,2,1C)1,3,2D)2,2,3taticvoidMain(tring[]arg){inti=1,j=2,k=2;if(j++>0||k++>0&&i++>0)Conole.WriteLine(\,i,j,k);Conole.ReadLine();}7.若想打印如下图案,下面代码划线处应分别填入()。
计算机程序设计员考试题与参考答案

计算机程序设计员考试题与参考答案一、单选题(共100题,每题1分,共100分)1、下列关于概要设计的基本原则,描述错误的是:( )。
A、应该遵循一些原则,包括:模块化、抽象B、应该遵循一些原则,包括:抽象、模块独立C、应该遵循一些原则,包括:抽象、继承D、应该遵循一些原则,包括:模块化、模块独立正确答案:C2、狭义地讲,测试是指:( )。
A、指软件产品生命周期内所有的检查、评审和确认活动B、对软件产品质量的检验和评价C、对软件产品功能的检查和评价D、对软件产品是否存在bug的检验正确答案:B3、下列不属于内存静态重定位的特点是( )。
A、在程序运行中无需再进行转换B、不需增加硬件地址变换机构C、内存利用率高D、地址变换在程序装入过程中一次完成正确答案:C4、( )描绘了系统的数据关系。
A、状态转化图B、程序流程图C、对话图D、实体关系图正确答案:D5、表A中的列B是标识列,属于自动增长数据类型,标识种子是2,标识递增量为3。
首先插入三行数据,然后再删除一行数据,再向表中增加数据行时,标识列将是()。
A、2B、8C、5D、11正确答案:D6、狭义地讲,测试是:( )。
A、对软件产品质量的检验和评价B、对软件产品功能的检查和评价C、对软件产品是否存在bug的检验D、指软件产品生命周期内所有的检查、评审和确认活动正确答案:A7、SQL中不一定能保证完整性约束彻底实现的是()A、主键约束B、检查子句C、局部约束D、外键约束正确答案:C8、在文件结构中,( )对用户是透明的。
A、物理的文件结构B、字节型文件结构C、字符型文件结构D、逻辑的文件结构正确答案:A9、所有的( )必须与业务需求一致。
A、系统需求B、产品需求C、功能需求D、用户需求正确答案:D10、在操作系统的管理下,在内存中划出若干个单元作为缓冲区,这种缓冲称为( )。
A、硬件缓冲B、多重缓冲C、单缓冲D、软件缓冲正确答案:D11、为查看产生特定诊断消息的代码语句,只要( )Output窗口中相关的诊断消息即可。
windows编程期末考试和答案

windows编程期末考试和答案一、单选题(每题2分,共20分)1. 在Windows编程中,哪个函数用于创建一个窗口?A. CreateWindowB. CreateDialogC. MessageBoxD. DrawText答案:A2. 哪个消息是当窗口被创建时发送的?A. WM_CREATEB. WM_PAINTC. WM_DESTROYD. WM_CLOSE答案:A3. 在GDI中,哪个函数用于绘制文本?A. DrawTextB. TextOutC. ExtTextOutD. MessageBox答案:B4. 哪个函数用于获取设备上下文(DC)?A. GetDCB. ReleaseDCC. BeginPaintD. EndPaint答案:A5. 在Windows中,哪个函数用于设置窗口的标题?A. SetWindowTextB. GetWindowTextC. DrawTextD. MessageBox答案:A6. 哪个消息是当窗口被销毁时发送的?A. WM_CREATEB. WM_DESTROYC. WM_CLOSED. WM_PAINT答案:B7. 在Windows编程中,哪个函数用于创建一个位图?A. CreateBitmapB. CreateCompatibleBitmapC. LoadBitmapD. CreateDIBSection答案:B8. 哪个函数用于在窗口中绘制一个矩形?A. RectangleB. FillRectC. DrawRectD. InvertRect答案:A9. 在Windows中,哪个函数用于获取系统颜色?A. GetSysColorB. GetDCC. GetBkColorD. GetTextColor答案:A10. 哪个消息是当窗口大小改变时发送的?A. WM_SIZEB. WM_MOVEC. WM_PAINTD. WM_CLOSE答案:A二、多选题(每题3分,共15分)1. 在Windows编程中,以下哪些函数可以用来创建窗口?()A. CreateWindowB. CreateDialogC. MessageBoxD. LoadImage答案:A、B2. 以下哪些消息是与窗口生命周期相关的?()A. WM_CREATEB. WM_DESTROYC. WM_CLOSED. WM_PAINT答案:A、B、C3. 在GDI中,以下哪些函数可以用来绘制文本?()A. DrawTextB. TextOutC. ExtTextOutD. MessageBox答案:A、B、C4. 在Windows中,以下哪些函数可以用来设置窗口的属性?()A. SetWindowTextB. SetWindowPosC. InvalidateRectD. MessageBox答案:A、B5. 在Windows编程中,以下哪些函数可以用来处理键盘输入?()A. TranslateMessageB. DispatchMessageC. PeekMessageD. GetMessage答案:A、B、C、D三、判断题(每题2分,共20分)1. 在Windows编程中,CreateWindow函数用于创建一个窗口。
Windows程序设计题(含简答题答案)

《Windows程序设计》模拟题一.单项选择题1、在VC++中,项目文件得扩展名就是(B)。
A)exeﻩﻩﻩﻩB)dspC)dswﻩﻩﻩD)cpp2、在MFC中,利用ClassWizard不能(D)。
A)建立新类ﻩﻩB)进行消息映射C)增加类得成员变量ﻩD)插入资源3、当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送(C)消息。
A)WM_CHARﻩﻩB)WM_HSCROLLC)W M_VSCROLLﻩﻩﻩD)WM_CHANGE4、更新菜单状态得消息就是(C )。
A)WM_MANDB)UPDATEC)UPDATE_MAND_UI D)INVALIDATE5、对于消息队列描述正确得就是(D)A)在Windows中只有一个消息系统,即系统消息队列。
消息队列就是一个系统定义得数据结构,用于临时存储消息。
B)系统可从消息队列将信息直接发给窗口。
另外,每个正在Windows下运行得应用程序都有自己得消息队列。
C)系统消息队列中得每个消息最终都要被USER模块传送到应用程序得消息队列中去。
应用程序得消息对列中存储了程序得所有窗口得全部消息.D)以上都正确6、在MFC中,所有得控件都就是(B)类得派生类,都可以作为一个特殊得窗口来处理。
A)CViewﻩﻩB)CWndC)C WindowﻩﻩﻩD)CDialog7、使用GetDC()获取得设备上下文在退出时,必须调用(A)释放设备上下文.A)ReleaseDC()ﻩﻩﻩB)delete()C)D eleteDC()ﻩﻩﻩD)Detach()8、希望菜单无效,应该用CCmdUI类得(A )成员函数。
ﻩﻩﻩB)SetRadioA)EnableﻩﻩﻩC)SetCheckﻩﻩﻩD)SetText9、希望菜单前出现一个“√",应该用CCmdUI类得(C)成员函数.A)Enable ﻩﻩﻩB)SetRadioC)SetCheckﻩﻩD)SetText10、下面(A)不就是MFC设备环境类CDC类得派生类.A)GDI ﻩﻩﻩﻩB)CPaintDCC)CClientDC ﻩﻩD)CWindowDC11、在MFC中,所有得文档类都派生于(C),所有得视图类都派生于(A )。
windows程序复习资料

1.1 基本概念Visual C++:微软公司出品的C++语言开发工具,允许程序员使用C++语言以可视化的编程方式快速开发基于Windows平台的系统软件及应用软件。
Windows API:Windows操作系统的应用编程接口,它是操作系统的一部分,由数千个函数组成,程序员可以在自己的程序里调用API函数以利用操作系统内置的一些功能。
MFC:微软基础类库。
依据面向对象编程思想将API函数封装在几百个C++类中,使程序员可以利用面向对象的方法开发程序。
C++语言标准:C++语言是一种通用的计算机编程语言,国际标准化组织已经对其语法和基本类库进行了标准化,很多公司依据C++语言标准推出了自己的C++开发工具,Visual C++只是其中一种。
1、Windows应用程序的界面●窗口:屏幕上的一块区域,是应用程序的主要输入输出部件,每个应用程序都拥有一个或多个窗口,开发Windows程序的第一步就是建立窗口。
窗口有两种存在形式:打开的窗口和图标(最小化的窗口)编写一个Windows应用程序,首先应创建一个或多个窗口,随后应用程序的运行过程即是窗口内部、窗口与窗口之间、窗口与系统之间进行数据处理和数据交换的过程●菜单(工具栏):属于某个窗口,用户通过菜单向应用程序发送命令。
●对话框:一种特殊的窗口,一般用于与用户交互。
●控件:对话框中可以包含很多种控件,例如按钮、编辑框、列表框、滚动条等。
从本质上讲,控件也是窗口。
2、开发Windows应用程序的方法(1)使用Windows API函数:API函数是Windows系统提供的编程接口,大致分为3类:●窗口管理函数:窗口的创建、移动、修改等。
●图形设备接口函数:实现在窗口的客户区绘制图形和文本。
●系统服务函数:实现与操作系统有关的多种功能,例如多线程控制等。
(2)使用MFC类库:类库中存放了大量预先定义的类,以面向对象的思想封装了API函数,程序员可以直接将这些类放到自己的程序里。
windows编程复习题

一 、简答题: 1. Winsows 编程中窗口的含义是什么?(5 分) 答:在 Windows 中,一个窗口就是屏幕上的一个矩形区域,它接收用户的输入并以文字或图形的格式显示输出内 容。窗口是 Windows 应用程序基本的操作单元,是应用程序与用户之间交互的接口,也是系统管理应用程序的基 本单位。 2. Windows API 是什么?请你写出它的英文全称。 分) (5 答:Windows 的 API 是 Windows 操作系统的应用程序接口。 分) (3 Windows 的 API 的英文全称是 Windows Application Programming Interface.(2 分) 3. Windows 应用程序可以使用哪些资源?资源的主要作用有哪些?(5 分) 答:Windowss 应用程序可以使用:加速键,位图,光标,对话框,菜单,工具条,字符串等。在 Windows 的可 执行文件中,资源是独立于代码的,使用单独的 Resource Compiler 来进行编译,并嵌入到可执行文件中,在编 程过程中,代码是可复用的,通过资源的导入导出功能来实现资源的可复用。另外,程序的国际化,也是通过资源 来实现的。 4. 什么是句柄?句柄有哪些作用?(5 分) 答:句柄是一个 32 位无符号整数。它是 WINDOWS 用来标识被应用程序所建立或使用的对象的唯一整数, WINDOWS 使用各种各样的句柄标识诸如应用程序实例,窗口,菜单,位图,GDI 对象等。常用的句柄类型有: HINSTANCE (运行实例句柄)、 HWND (窗口句柄) HMENU(菜单句柄) 、 、HBITMAP(位图句柄) 、HPEN (画笔句柄) 、HBRUSH(画刷句柄)等。 通过句柄可以获得相应的对象信息。在 Windows 中,句柄(Handle)并非对象的指针,它是系统内部表的 索引值。这样能避免应用程序直接与对象的内存地址打交道。 5. 什么是图形设备接口 GDI?(5 分) 答:Windows 图形设备接口(GDI)的英文全称是 Graphics Device Interface,是为与设备无关的图形设计的, GDI 处于设备驱动程序的上一层, Windows 的重要组成部分。 是 它负责管理用户绘图操作时功能的转换。 Windows 通过 GDI 函数为应用程序提供服务。用户通过调用 GDI 函数绘制不同尺寸、颜色、风格的几何图形、文本和位图。 GDI 通过不同设备提供的驱动程序将绘图语句转换为对应的绘图指令, 避免了应用程序直接对硬件进行操作, 从而 实现所谓的设备无关性。 6. Winsows 编程中 MFC 表示什么?请你写出它的英文全称。 分) (5 答:Winsows 编程中 MFC 表示微软基础类库,它的英文全称是 Microsoft Foundation Class. 7. 什么是一个 Visual C++ Project(项目或者译为工程)?(5 分) 答:在 Visual C++ IDE 中,把实现程序设计功能的一组相互关联的 C++源文件、资源文件以及支撑这些文件的 类的集合称为一个项目。Visual C++ IDE 以项目作为程序开发的基本单位,项目用于管理组成应用程序的所有元 素,并由它生成应用程序。 项目用项目文件 DSP(Developer Studio Project)来描述,文件名后缀为.dsp。项目文件保存了项目中所用到的 源代码文件和资源文件的信息,如文件名和路径。同时,项目文件还保存了项目的编译设置等信息,如调试版 (Debug)或发布版(Release) 。 8. 何谓应用程序框架?(5 分) 答: 同一类型应用程序的结构大致相同, 并有很多相同的源代码, 因此可以通过一个应用程序框架 AFX (Application FrameWorks)编写同一类型应用程序的通用源代码。 MFC 应用程序框架将那些每个应用程序都共同需要使用的代码封装起来,如完成默认的程序初始化功能、建立应 用程序界面和处理基本的 Windows 消息,使程序员不必做这些重复的工作,把精力放在实质性代码的编写上。 9. 在开发 Windows 应用程序时使用 Device Context(设备环境或者译为设备上下文)有什么好处?(5 分) 答:设备环境(Device Context 设备上下文)是设备无关的,是设备的抽象。通过使用设备环境(Device Context 设备上下文) ,程序员在编程时不用关心设备的类型。 分) (2 图形在不同的设备上输出都需要经过转换,由于有了设备环境(Device Context 设备上下文) ,这个具体转换过 程由操作系统去实现, 这样就大大地降低了应用程序设计的复杂性,提高了应用程序的通用性和应用程序开发的 效率。 分) (3 10. Windows 系统提供的标准控件有哪些?(5 分) 答:静态控件,按钮控件,编辑框控件,列表框控件,组合框控件,滚动条控件。 二、简要回答下列问题: 1. 请你简要描述 Windows 程序的事件驱动程序模型。 (10 分)
计算机程序设计员(高级)复习题含答案

计算机程序设计员(高级)复习题含答案一、单选题(共90题,每题1分,共90分)1、随着信息技术的飞速发展,软件项目的生命周期()。
A、视情况而定B、没有变化C、越来越短D、越来越长正确答案:C2、下列不属于Visual C++的工程类型的是:()。
A、ATL COM AppWizardB、MFC ActiveX ControlWizardC、ISAPI Extension(Internet Server API)WizardD、Win16 Application正确答案:D3、多任务通常包括()大类。
A、5B、3C、2D、4正确答案:C4、所有的用户需求必须与()一致。
A、产品需求B、系统需求C、功能需求D、业务需求正确答案:D5、()是通过逐级文字菜单来组织链接和内容的,它不像WWW那样有丰富的多媒体页面。
A、FtpB、GopherC、FingerD、Http正确答案:B6、需求分析员与用户面谈时应当()。
①注意礼节②应事先了解用户的身份、背景③应该先了解细节问题,再了解宏观问题。
④避免片面地听取某些用户的需求A、①②③④B、①②④C、②③④D、①②③正确答案:B7、软件维护的种类不包括:()。
A、适应性维护B、完善性维护C、改正性维护D、扩展性维护正确答案:D8、下列那种方法不能提高程序的运行效率:()。
A、不要把不同的数据类型混在一起B、寻找复杂性小的算法C、简化逻辑结构D、尽量避免采用多维数组(C语言除外)和复杂的表格正确答案:C9、下列属于非授权访问行为的是()。
A、传播病毒B、窃取数据的使用权C、避开系统访问机制,非正常使用网络资源D、删除信息正确答案:C10、()是一种简单的协议,它使用的端口是43。
A、GopherB、HttpC、FtpD、Whois正确答案:D11、n个顶点的强连通图的邻接矩阵中至少有()个非零元素。
A、nB、2nC、n-1D、2n-2正确答案:D12、在一个调用语句上按()键将指示Debuger全速执行所调用的子程序。
Windows程序设计-大学模拟题(附答案)

《Windows程序设计》模拟题一,单选题1.所有的Windows应用程序都是由()驱动的.A.事件B.消息C.命令D.菜单[答案]:B2.一般应用程序不会派生自己的()类.A.主框架B.视图C.菜单D.文档[答案]:C3.MessageBox不能完成()功能.A.接收用户输入B.显示消息C.改变对话框标题D.显示问号图标[答案]:A4.Windows系统中的消息不包括().A.标准Windows消息B.控件消息C.命令消息D.视图消息[答案]:D5.()函数是从CView继承来的成员函数,用于刷新整个视图窗口屏幕.A.InvalidateB.MouseMoveC.PaintD.Brush[答案]:A6.菜单()消息,处理菜单状态的动态变化.A.UPDA TE_UIB.UPDATEMANDD.UPDA TE_COMMAND_UI[答案]:DmdUI类的常用成员函数()使菜单项前增加或清除√标志.A.SetCheckB.SetRadioC.SetTextD.Enable[答案]:A8.编辑菜单时为使字母下带下划线,应使用助记符().A.@B.#C.&D.$[答案]:CmdUI类的常用成员函数()使菜单项前增加或清除圆点标志.A.SetCheckB.SetRadioC.SetTextD.Enable[答案]:BmdUI类的常用成员函数()设置菜单项有效或无效.A.SetCheckB.SetRadioC.SetTextD.Enable[答案]:DmdUI类的常用成员函数()改变菜单项文本.A.SetCheckB.SetRadioC.SetTextD.Enable[答案]:C12.CDC的常用函数()可以绘制矩形.A.EllipseB.RectangleC.ArcD.Circle[答案]:B13.应用程序可以使用GDI创建3种类型的图形输出,不包括().A.矢量图形C.光栅图形D.文本[答案]:B14.CDC的常用函数()可以绘制内接矩形的圆.A.EllipseB.RectangleC.ArcD.Circle[答案]:A15.()函数用于在指定位置输出字符串.A.PrintB.TextOutC.ScanfD.Write[答案]:B16.在View的在普通成员函数体内用()获得设备环境.A.CDCB.CWindowDClientDClassDC[答案]:C17.创建画笔不需要给出()参数.A.风格B.宽度C.颜色D.长度[答案]:D18.实线画笔的风格应用()宏.A.PS_SOLIDB.PS_DASHC.PS_DOTD.PS_DASHDOT[答案]:A19.实心画刷只需要定义().A.填充样式B.填充颜色C.填充模式[答案]:B20.对话框()描述对话框的外观和控件布局,在资源描述文件中有对话框的定义.A.资源B.类C.模板D.数据[答案]:A21.调用对话框类的对象的方法,创建并显示模态对话框.A.Print()B.Create()C.DoModal()D.Show()[答案]:C22.CDialog中的()成员函数用于成员变量和控件之间的数据传递.A.ExchangeB.ToDoC.EXTD.UpdateData[答案]:D23.静态控件不包括().A.静态文本B.按钮C.静态图片D.组框[答案]:B24.()不是编辑框的消息.A.BN_CLICKEDB.EN_CHANGEC.EN_KILLFOCUSD.EN_SETFOCUS[答案]:A25.()设置进度条的当前位置.A.SetRangeB.SetStepC.SetPosD.StepIt[答案]:C26.()设置进度条范围.A.SetRangeB.SetStepC.SetPosD.StepIt[答案]:A27.()设置进度条填充步长.A.SetRangeB.SetStepC.SetPosD.StepIt[答案]:B28.()让进度条前进一个步长.A.SetRangeB.SetStepC.SetPosD.StepIt[答案]:D29.文档和视图的关系是().A.一对一B.一对多C.多对一D.多对多[答案]:B30.在视图类中获得文档类对象指针用函数().A.GetDocumentB.UpdateAllViewsC.OnUpdateD.SetModifiedFlag[答案]:A31.Win32应用程序入口函数是().A.MainB.EntranceC.WinMainD.Inlet[答案]:C32.创建窗口工作()不在WinMain中完成.A.设计窗口类B.注册窗口类C.创建窗口D.窗口过程[答案]:D33.项目文件的扩展名是().A.exeB.dspC.dswD.cpp[答案]:B34.利用ClassWizard不能().A.建立新类B.进行消息映射C.增加类的成员变量D.插入资源[答案]:D35.下列()不是MFC消息映射机制有关的宏.A.DECLARE_MESSAGE_MAPB.BEGIN_MESSAGE_MAPC.DECLARE_SERIALD.END_MESSAGE_MAP[答案]:C36.要使鼠标箭头在按钮上暂停时能显示工具栏按钮提示,必须设置工具栏的风格为().A.CBRS_TOOLTIPSB.CBRS_FL YBYC.CBRS_NOALIGND.WS_VISIBLE[答案]:B37.当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,水平滑动条发送()消息.A.WM_CHARB.WM_HSCROLLC.WM_VSCROLLD.WM_CHANGE[答案]:B38.要将模式对话框在屏幕上显示需要用到().A.CreateB.DoModalC.OnOKD.构造函数[答案]:B39.当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送()消息.A.WM_CHARB.WM_HSCROLLC.WM_VSCROLLD.WM_CHANGE[答案]:C40.以下控件中,()没有Caption属性.A.按钮B.组框C.编辑框D.静态文本框[答案]:C41.关于工具栏,菜单和加速键的关系,正确的说法是().A.工具按钮与菜单必须一一对应B.工具栏与加速键一一对应C.工具按钮不必与菜单一一对应D.菜单与加速键一一对应[答案]:C42.使用GetDC()获取的设备上下文在退出时,必须调用()释放设备上下文.A.ReleaseDC()B.deleteC.DeleteDC()D.Detach()[答案]:A43.列表框CListBox类的成员函数()用来向列表框增加列表项.A.AddString()B.DeleteString()C.ResetContent()D.FindString()E.GetCount()[答案]:A44.列表框CListBox类的成员函数()用来清除列表项所有项目.A.AddString()B.DeleteString()C.ResetContent()D.FindString()E.GetCount()[答案]:C45.下面()不是MFC设备环境类CDC类的派生类.A.GDIB.CPaintDClientDCD.CWindowDC[答案]:A46.()是非模态对话框.A.查找对话框B.字体对话框C.段落对话框D.颜色对话框[答案]:A47.使用()通用对话框类可用打开文件.A.CFileDialogolorDialogC.CPrintDialogD.CFontDialog[答案]:A48.常见的菜单类型不包括().A.自动菜单B.主菜单C.弹出菜单D.快捷菜单[答案]:A49.下列()不是MFCCDC类中常用的函数.A.TextOutB.EllipseC.RectangleD.CreateRedText[答案]:D50.对话框的功能被封装在()类中.A.CWndB.CDialogC.CObjectmdTarget[答案]:B51.Windows标准控件的属性设置通常由三个选项卡构成,不包括()A.ColorB.GeneralC.StyleD.ExtendStyles[答案]:A52.菜单项助记符前用()引导.A.%B.&C.#D.$[答案]:B53.更新菜单状态的消息是().MANDB.UPDATEC.UPDATE_COMMAND_UID.INV ALIDATE[答案]:C54.能间接调用视图类的OnDraw函数的是()A.OnTimerB.LButtonDownC.SerializeD.Invalidate[答案]:D55.下列()不是MFC消息映射机制有关的宏.A.DECLARE_MESSAGE_MAPB.BEGIN_MESSAGE_MAPC.DECLARE_SERIALD.END_MESSAGE_MAP[答案]:C56.下面()不是GDI对象.A.CFontB.CPalettelientDCD.CBitmap[答案]:C57.列表框的类型不包括()A.SimpleB.DropdownC.DropListD.Scroll[答案]:D58.设置编辑框控件的文本内容,可使用函数()A.SetWindowTextB.SetSelC.ReplaceSelD.GetWindowText[答案]:A59.使用()函数获取的设备上下文在退出时必须调用ReleaseDC释放.A.GetWindowsDCB.GetDCC.GetDesktopDCD.GetClientDC[答案]:B60.类CButton不是下列()控件对应的类.A.命令按钮B.单选按钮C.复选框D.静态文本框[答案]:D61.列表框CListBox类的成员函数()用来返回列表框的列表项总数.A.AddString()B.DeleteString()C.ResetContent()D.FindString()E.GetCount()[答案]:F62.滑动条是由滑动块和刻度线构成,按指定增量移动,CSliderCtrl类的成员函数()代表设置滑动块位置.A.SetRange()B.SetPos()C.SetTic()D.SetPoint()E.SetTicFreq()[答案]:B63.滑动条是由滑动块和刻度线构成,按指定增量移动,CSliderCtrl类的成员函数()代表设置刻度线位置,一次只能设置一个刻度线,用于手动设置刻度线.A.SetRange()B.SetPos()C.SetTic()D.SetPoint()E.SetTicFreq()[答案]:C64.滑动条是由滑动块和刻度线构成,按指定增量移动,CSliderCtrl类的成员函数()代表设置刻度线的疏密程度,配合Autoticks属性使用,每隔一定单位自动显示一条刻度线.A.SetRange()B.SetPos()C.SetTic()D.SetPoint()E.SetTicFreq()[答案]:F二,判断题1.UpdateData(true)函数完成成员变量的值传递给控件的操作.[答案]:F2.基于对话框的应用程序,也有文档类和视图类.[答案]:F3.调用DestroyWindow函数完成非模态对话框的销毁工作.[答案]:T4.每个对话框资源都会关联一个对话框类,常派生于CDialog,通过该类对象间接操纵对话框. [答案]:T5.基于对话框的应用程序在运行时也有菜单栏.[答案]:F6.对话框的功能被封装在CDialog类中.[答案]:T7.使用CColorDialog通过对话框类可以显示颜色对话框.[答案]:T8.DDX为对话框数据交换用.[答案]:T9.DDV完成成员变量和控件之间的交换.[答案]:F10.OnOK函数中进行对话框的初始化工作.[答案]:F11.对话框只由对话框类组成.[答案]:F12.从对话框的工作方式看,对话框可分为模式对话框和非模式对话框.[答案]:T13.查找对话框是模式对话框.[答案]:F14.颜色对话框是非模式对话框.[答案]:F15.每一个单选按钮在对话框类中都可以映射一个int类型值变量.[答案]:F16.当编辑框中的文本已被改变,在新的文本显示之后发送EN_CHANGE通知消息.[答案]:T17.CButton类控件只有按键按钮一种类型.[答案]:F18.一组单选按钮在组中的序号从1开始.[答案]:F19.向列表框增加列表项只能使用CListBox类成员的AddString函数.[答案]:F20.一个旋转按钮控件与一个相伴的控件一起使用时,该控件的Tab键次序必须大于旋转按钮. [答案]:F21.进度条控件的操作封装在CProgressCtrl类.[答案]:T22.多个静态文本控件必须有不同的ID号.[答案]:F23.调用Create成员函数创建动态分割窗口.[答案]:T24.调用Create成员函数创建静态分割窗口.[答案]:F25.视图派生类的成员函数通过调用GetDocument函数得到当前文档对象的指针.[答案]:T26.用户可以通过项目工作区窗口的ResourceView视图来查看资源.[答案]:T27.利用MFC编程时,所有的消息与消息处理函数的添加都必须采用ClassWizard类向导来完成.[答案]:F28.窗口是Windows应用程序的基本操作单元,是应用程序与用户之间交互的接口环境,也是系统管理应用程序的基本单位.[答案]:T29.Windows应用程序的入口也是main函数.[答案]:F30.键盘鼠标消息都是命令消息.[答案]:F31.使用MFCAppWizard[exe]向导创建应用程序框架时,向导生成的文件名和类名是不可以更改的.[答案]:F32.消息映射是将消息处理函数与要处理的特定消息连接起来的一种机制.[答案]:T33.命令消息是由菜单项,工具栏按钮和快捷键等用户界面对象发出的WM_COMMAND消息.[答案]:T34.用快捷键F9既可设置断点,又可取消断点.[答案]:T35.调试程序时,会同时出现Variable窗口和Watch窗口.[答案]:T36.Windows是一个基于事件的消息驱动系统.[答案]:T37.MFC采用消息映射来处理消息.[答案]:T38.WM_RBUTTONDOWN是鼠标右键按下时产生的消息.[答案]:T39.给菜单项定义快捷键,只需在菜单项属性设置对话框的Caption文本框中说明即可. [答案]:F40.快捷菜单一般出现在鼠标箭头的位置.[答案]:T41.UPDATE_COMMAND是更新命令用户接口消息.[答案]:F42.工具栏停靠特性只能设置一次.[答案]:T43.状态栏的功能由CToolBar类实现.[答案]:F44.CMenu类,CToolBar类和CStatusBar类的根基类是相同的.[答案]:T45.菜单选择只可以通过鼠标操作来完成.[答案]:F46.状态栏可以通过资源编辑器来编辑.[答案]:F47.MFC应用程序框架为状态栏定义的静态数组indicators放在MainFrm.h文件中. [答案]:F48.在菜单设计时,&字符的作用是使其后的字符加下划线.[答案]:TlientDC代表整个窗口的设备环境.[答案]:F50.删除CPen对象可调用CPen对象的DeleteObject函数.[答案]:F51.DDB又称GDI位图,它依赖于具体设备,只能存在于内存中.[答案]:T52.创建阴影画刷函数是CreateHatchBrush.[答案]:T53.深绿色RGB值为(0,128,0).[答案]:T54.Windows引入GDI的主要目的是为了实现设备相关性.[答案]:F55.Windows用COLORREF类型的数据存放颜色.[答案]:T56.Windows是按图形方式输出字符的.[答案]:T57.TextOut是CDC类中常用的文本输出函数.[答案]:T58.创建画笔后必须调用CDC类的成员函数SelectObject将画笔选人当前设备环境. [答案]:T59.对话框创建后,发送WM_CREATE消息,在该消息处理代码中创建各控件.[答案]:T60.通过AppWizard建立的程序不能被立即执行.[答案]:F61.打开一个项目,只需打开对应的项目工作区文件.[答案]:T62.在同一项目中,VisualC++在内部用来标识资源的资源符号不能重复.[答案]:T63.在Windows环境下,资源与程序源代码紧密相关.[答案]:F64.用户可以通过选择Tools|Customize菜单命令设置集成开发环境的工具栏.[答案]:T65.项目工作区文件的扩展名为dwp.[答案]:F66.Ctrl+F5是编辑程序的快捷键.[答案]:F67.F7是运行程序的快捷键.[答案]:F三,填空题1.项目工作区文件的扩展名是###.[答案]:dsw2.修改公司,描述等信息需用###编辑器.[答案]:Version3.利用###可以快速创建各种风格的应用程序框架,并可自动生成程序通用的源代码.[答案]:应用程序向导4.启动VisualC++,进入VisualC++IDE,从###菜单上选择New菜单项,此时将弹出New对话框[答案]:应用程序向导5.利用###可以快速创建各种风格的应用程序框架,并可自动生成程序通用的源代码[答案]:File6.句柄是Windows使用的一种无重复整数,主要用来###.[答案]:标识应用程序中的一个对象7.一个单文档的MFC应用程序框架一般包括5个类:应用程序类,框架窗口类,###,文档类和文档模板类.[答案]:视图类8.用户点击菜单项后,会产生###消息.[答案]:WM_COMMAND9.改变菜单项文本是使用CCmdUI类的###成员函数.[答案]:SetText10.处理菜单命令消息首先会在###类中.[答案]:视图11.弹出快捷菜单使用的是CMenu类的###函数.[答案]:TrackPopupMenu12.在状态栏中添加文本使用的是CStatusBar类的###函数.[答案]:SetPaneText13.与DOS字符方式下的输出不同,Windows是按###方式输出的.[答案]:图形14.为了体系Windows的设备无关性,应用程序的输出面向一个称为###的虚拟逻辑设备. [答案]:设备环境15.可以利用CGdiObject类的成员函数###将GDI对象设置成指定的库存对象.[答案]:CreateStockObject16.对话框的主要功能是###和输出信息.[答案]:接收用户输入17.使用###函数可用创建非模式对话框.[答案]:Create18.每个控件最多只能关联Control和Value类型成员变量各###个.[答案]:119.一组单选按钮在对话框类中只能映射一个###类型值变量,对应单选按钮在组中的序号,序号从0开始.[答案]:int。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单项选择题:1.WinMain()函数的工作。
WinMain()函数是Windows程序的入口点在WinMain中进行:注册窗体类、建立窗体、显示窗体、更新窗体、建立消息循环2.非MFC的Windows程序中,不是处理WM_PAINT消息的时候怎样获得客户区的设备环境句柄。
BeginPaint ----------EndPaintGetDC---------------ReleaseDC(成对出现)利用GetDC()函数获取设备环境句柄3.句柄的含义。
句柄是一个(通常为32位的)无符号整数(unsigned int),它代表一个内核对象内核对象在应用层的表示4.在MM_TEXT映射模式下,什么情况下客户坐标和逻辑坐标可能不同。
当窗口客户区有滚动条时客户坐标和逻辑坐标可能不同5.Windows程序的控制流程。
Windows程序没有固定的控制流程,事件驱动程序控制流程6.事件驱动、消息驱动的概念。
事件驱动程序设计是一种全新的程序设计方法,它不是由事件的顺序来控制,而是由事件的发生来控制,而这种事件的发生是随机的、不确定的,并没有预定的顺序,这样就允许程序的的用户用各种合理的顺序来安排程序的流程。
消息是事件到达Windows内部后的称呼7.对话框、控件的作用。
对话框是程序与用户之间进行交互,接收用户输入、并把数据显示出来的一个窗口;控件是用户可与之交互以输入或操作数据的对象。
控件通常出现在对话框中或工具栏上。
8.MFC中怎样处理WM_PAINT消息。
在OnDraw()函数中处理该消息9.GetMessage()函数在什么情况下返回0,从而导致消息循环终止,程序结束。
在接收到WM_QUIT消息时返回010.Windows中,应用程序的输出是怎样进行的。
通过设备描述表DC(Device Context)来进行应用程序与物理设备之间的交互11.MFC中,大多数类的基类都是什么。
CObject类12.一个MFC应用程序必须有且只能有一个从哪个类派生的全局应用程序对象,此对象在运行时刻控制应用程序中所有其他对象的活动。
CWinApp类13.每次当窗口客户区需要重新绘制时,应用程序框架怎么处理。
发送WM_PAINT消息,调用OnDraw()函数进行重绘14.CDC类的作用。
CDC是设备描述表类的基类,除了一般的窗口显示外,还用于基于桌面的全屏幕绘制和非屏幕显示的打印机输出。
15.当程序中某个函数改变了数据而需要重新绘制客户区时,OnDraw()函数不会被自动调用,这时需要怎样间接调用它。
使用Invalidate()调用16.Invalidate()要重绘整个窗口客户区,当数据更新很快时,这样会引起屏幕闪烁。
为了避免闪烁,可以怎样处理。
选择一个外包矩形,更新外包矩形,减少闪烁,使用InvalidateRect()重绘客户区中的指定区域17.关于颜色。
COLORREF 是一个32-bit 整型数值,它代表了一种颜色。
你可以使用RGB 函数来初始化COLORREF。
如:COLORREF color=RGB(0,255,0);18.匈牙利命名法的常用规则。
匈牙利命名法常用前缀:指针:p句柄:h长整型:l布尔:b浮点型(有时也指文件):f双字:dw字符串:sz短整型:n双精度浮点:d字符:ch(通常用c)整型:i(通常用n)字节:by字:w无符号:u19.键盘消息处理函数OnKeyDown(UINT nChar,UINT nRepCnt,UINT nFlags)中的主要参数。
参数UINT nChar指按下按键的虚拟键码nRepCnt 按键按下的次数nFlags 有没有其他键同时被按下(shift、ctrl、Alt、、、、、、)20.设置定时器函数SetTimer(UINT nIDEvent,UINT nElapse,void *lpfnTimer)中的主要参数。
参数UINT nElapse指发送WM_TIME消息的时间间隔,单位为毫秒设置定时器的步骤:在需要使用的地方SetTimer,对OnTimer自定义函数进行消息编写,适当地方KillTimer21.CDC类中怎样选用库存GDI对象。
GetStockObject()(P188)22.当创建了自己定义的画笔、画刷等GDI对象后,怎样将其选进设备环境。
CDC::SelectObject()23.CDC类的成员函数SetROP2()的作用。
设定绘图模式24.扩展名为.rc的文件是什么。
资源文件25.文档/视图结构的分工。
文档相当于数据容器,视图相当于查看数据的窗口或是和数据发生交互的窗口。
(一个完整的应用一般由四个类组成:CWinApp应用类,CFrameWnd窗口框架类,CDocument文档类,CView视类。
)27.视图类怎样获得文档类的指针。
CView::GetDocument()28.以模态方式显示对话框的方法。
CDialog::DoModal()29.MFC中怎样获得应用程序类对象的指针。
AfxGetApp( )30.在OnDraw()函数以外的函数中,怎样在客户区中显示数据。
使用CClientDC类创建客户区的设备环境句柄,如:CClientDC dc(this)29.GDI绘图函数所使用的参数。
GDI绘图函数使用的逻辑坐标30.GetClientRect()函数所获得的矩形是用什么坐标来表示的。
客户坐标31.如果要创建宽度大于1的虚线画笔,则在创建画笔时一定要使用什么画笔类型。
PS_GEOMETRIC32.关于串行化的问题。
需使用一个类型为CArchive的归档对象充当磁盘文件与程序中的对象的中介33.当用户按下某个字母键时,消息发生的顺序。
WM_KEYDOWN->TranslateMessage()->WM_CHAR34.关于窗口客户区变为无效的问题。
窗口客户区变为无效时会发送WM_PAINT消息调用OnDraw()进行重绘35.当一个类中要使用另外一个类时,一定要先使用#include将什么包含进来。
需要将要使用的类的头文件包含进来36.MFC程序中,怎样从视图类中获得主框架类对象的指针。
操作状态栏调用CVIEW::GetParentFrame()二、多项选择题:1.一个窗口由哪些部分组成。
标题栏,菜单zz栏,工具栏,客户区,状态栏2.窗口的框架包括哪些部分。
标题栏、菜单栏、最大化按钮、最小化按钮、关闭按钮、滚动条“客户区边框”3.Windows程序的资源包括哪些。
Windows资源包括图表、菜单、热键、对话框、光标、字符串、位图4.坐标的分类问题。
设备坐标(DP)、客户坐标(Client)、逻辑坐标(LP)8.根据消息来源的不同,Windows消息分为哪些种类。
系统消息、用户消息9.使用定时器的步骤有哪些。
1、调用SetTimer(m_hWnd,1,1000,NULL);设置定时器2、添加ON_WM_TIMER()消息映射宏3、添加OnTimer()消息响应函数4、KillTimer()移除定时器10.设备环境的信息有哪些。
设备上下文(设备环境)是一种包含有关某个设备(如显示器或打印机)的绘制属性信息的Windows 数据结构。
所有绘制调用都通过设备上下文对象进行,这些对象封装了用于绘制线条、形状和文本的Windows API。
11.GDI对象的概念。
GDI(Graphics Device Interface)即图形设备接口,它的主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形输出。
12.文档/视图结构的适用情况。
不适用于数据量少、非标准窗口的程序13.哪些类中可以使用串行化操作(即Serialize()函数)。
从CObject继承而来的类、CDocument及其派生类、CObArray、CObList14.自定义的CObject派生类,要使用串行化操作,必须添加哪两个宏。
在类声明文件中使用DECLARE_SERIAL宏在类实现文件中使用IMPLEMENT_SERIAL宏15.对话框的种类。
模态对话框、非模态对话框三、判断题:1.当向客户区输出时,哪些应用程序能向该客户区输出。
只有程序自身可以向该客户区输出2.Windows程序的控制流程问题。
无固定的流程3.Windows程序中除了能使用系统提供的标准消息,还允许程序员自己定义消息吗。
允许4.面向对象程序设计中,怎样放置类。
可放置在任意文件中5.CDC类的成员函数MoveTo()的作用。
把当前位置移动到指定点处6.Windows应用程序的窗口中,默认的逻辑坐标系统是怎样的。
在MM_TEXT模式下,若无滚动条或滚动条位于左上方,则逻辑坐标与客户坐标一致,均是以像素为单位,以窗口的左上角为坐标原点;若滚动条移动则两者的数值不一致7.CWnd类的成员函数GetClientRect()的作用。
获取窗口客户区的坐标8.视图类是否有自己的边框。
无9.保存和载入串行化的数据是通过什么作为中介来完成的。
CArchive类四、程序题:1.主控函数WinMain()建立消息循环的代码。
While(GetMessage(&msg,NULL,0,0)){TranslateMessage(&msg);DispathMessage(&msg);}2.绘图程序案例的第2个版本中,视图类OnDraw()函数怎样进行处理。
void CDraw1View::OnDraw(CDC* pDC){CDraw1Doc* pDoc = GetDocument(); //获取文档类的指针ASSERT_V ALID(pDoc); //判断指针是否为NULL,如果是则要报错// TODO: add draw code for native data herePOSITION pos=pDoc->m_Graphs.GetHeadPosition(); //获取文档类中存放图形的链表的头位置//逐个取得链表中每个图形的指针,并调用其Draw()虚函数进行绘制while(pos!=NULL){CGraph *p=(CGraph *)(pDoc->m_Graphs.GetNext(pos));p->Draw(pDC);}}3.绘图程序案例的第4个版本中,以直线类为例,怎样修改它的Draw()成员函数,以便用指定的画笔进行绘制。
void CLine::Draw(CDC *pDC){//下面4条语句演示了创建一个自定义画笔的方法LOGBRUSH logBrush;logBrush.lbStyle = BS_SOLID;logBrush.lbColor = m_nPenColor;CPen NewPen(m_nPenStyle | PS_GEOMETRIC, m_nPenWidth, &logBrush), *pOldPen; //要实现宽度大于1的非实线画笔,就必须把类型指定为PS_GEOMETRIC pOldPen=pDC->SelectObject(&NewPen); //将创建的GDI对象选入设备环境pDC->MoveTo(m_StartPoint);pDC->LineTo(m_EndPoint);pDC->SelectObject(pOldPen); //恢复原来的GDI对象}。