系统Windows编程复习题.docx
- 文档编号:2967740
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:35
- 大小:31.25KB
系统Windows编程复习题.docx
《系统Windows编程复习题.docx》由会员分享,可在线阅读,更多相关《系统Windows编程复习题.docx(35页珍藏版)》请在冰点文库上搜索。
系统Windows编程复习题
【关键字】系统
一单选题
1.在Windows编程约定中,应用程序接口的英文缩写是(A)。
A.API
B.SDI
C.GDI
D.MDI
2.在Windows编程约定中,软件开发包的英文缩写是(C)。
A.API
B.SDI
C.SDK
D.MDI
3.在Windows编程约定中,图像设备接口的英文缩写是(C)。
A.API
B.SDI
C.GDI
D.MDI
4.以下对应于unsignedlong的数据类型为:
(B)
A.WORD
B.DWORD
C.INT
D.BYTE
5.下列选项中,不属于匈牙利命名法属性部分的是(D)。
A.g_
B.m_
C.c_
D.d_
6.如果要严格按照匈牙利命名法命名1个全局窗口句柄,以下变量命名正确的是(A)。
A.g_hWnd
B.m_hWnd
C.g_pWnd
D.m_pWnd
7.下列Windows数据格式中,代表设备句柄的是(B)。
A.HWND
B.HDC
C.HINSTANCE
D.HFONT
8."在一个窗口的正常运行的Windows程序中,把主窗口创建语句做如下改动:
hWnd=CreateWindow(NULL,szTitle,WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,0,CW_USEDEFAULT,0,NULL,NULL,hInstance,NULL);
则下列说法正确的是(C)。
"
B.程序仍然正常运行,与改动前相比没有变化
C.程序出现编译错误
D.程序编译通过,但没有窗口显示
E.程序正常运行,窗口标题变为NULL
9.典型的Windows窗口程序的流程为:
(A)
A.注册窗口类->创建窗口->显示窗口->革新窗口->消息循环
B.创建窗口->注册窗口类->显示窗口->革新窗口->消息循环
C.创建窗口->注册窗口类->显示窗口->革新窗口->消息循环
D.注册窗口类->创建窗口->革新窗口->显示窗口->消息循环
10.菜单编辑器中,如果要设置某个项为分隔线,那么这个项的哪个属性为true。
(D)
A.Visible
B.Grayed
C.Enable
D.Separator
11.在Windows消息机制中,菜单消息类型是:
(B)
A.WM_PAINT
B.WM_COMMAND
C.WM_CREATE
D.WM_CLOSE
12.在Windows编程中,代表键盘的"↑"键的虚拟键值是(A)。
A.VK_UP
B.WM_KEYDOWN
C.WM_KEYUP
D.VK_DOWN
13.在Windows编程中,响应键盘按键按下消息的Windows消息是(B)。
A.VK_UP
B.WM_KEYDOWN
C.WM_KEYUP
D.VK_DOWN
14.在Windows编程中,按下键盘的"A"键后,返回的Windows消息是(B)。
A.VK_A
B.WM_KEYDOWN
C.A
D.DIK_A
15.在Windows编程中,按下鼠标左键产生的Windows消息是(B)。
A.WM_KEYDOWN
B.WM_LBUTTONDOWN
C.WM_LEFT
D.WM_RBUTTONDOWN
16.在Windows编程中,标准鼠标的按键数是(C)。
A.1
B.2
C.3
D.4
17.Windows编程中,定时器消息是(B)
A.WM_TIME
B.WM_TIMER
C.WM_ON_TIME
D.WM_COMMAND
18.GDI环境中,窗口的坐标系是如何构成的?
(D)
A.左上角为原点,x轴正方向为水平向右,y轴正方向为竖直朝上
B.中间为原点,x轴正方向为水平向右,y轴正方向为竖直朝上
C.左下角为原点,x轴正方向为水平向右,y轴正方向为竖直朝下
D.左上角为原点,x轴正方向为水平向右,y轴正方向为竖直向下
19.以下选项中,GDI不能支持的是:
(B)
A.位图
B.Flash动画
C.直线和曲线
D.文字
20.设备环境DC的全称为:
(B)
A.DeviceContent
B.DeviceContexts
C.DeviceConfig
D.DeviceConter
21.InvalidateRect的作用是(B)
A.删除一个矩形
B.使一个矩行区域变为无效,从而可以重绘
C.使一个矩形区域变为无效,从而释放部分GDI资源
D.擦除一个矩形区域
22."已知窗口为缺省状态,有如下代码:
HDChdc=GetDC(hWnd);
HPENhpen=CreatePen(1,1,RGB(255,0,0));
SelectObject(hdc,hpen);
Ellipse(hdc,050,50,200,200);
则这段代码的执行效果是(B)。
"
A.绘制1个黑色的椭圆形边框,无填充颜色
B.绘制1个红色的椭圆形边框,无填充颜色
C.绘制1个黑色的椭圆形,填充为黑色,无边框
D.绘制1个红色的椭圆形,填充为红色,无边框
23."已知有如下代码:
HDChDC=GetDC(hWnd);
LineTo(hDC,100,100);
则这段代码的执行效果是(A)。
"
A.从窗口的左上角至坐标(100,100)绘制1条直线
B.没有绘制任何图形
C.从窗口的任意一点开始至坐标(100,100)绘制1条直线
D.从鼠标在窗口的位置至坐标(100,100)绘制一条直线
24.以下函数中不受画刷影响的函数是:
(C)
A.Rectangle
B.Ellipse
C.LineTo
D.Polygon
25.如果要创建一个宋体字体,那么字体描述中哪个属性为“宋体”?
(C)
A.lfCharSet
B.lfQuality
C.lfFaceName
D.lfStrikeOut
26.在Windows编程约定中,位图句柄为(B)。
A.HGDI
B.HBITMAP
C.HDC
D.HPEN
27.下面哪个步骤能实现透明贴图(模板位图为单色的1位位图)?
(A)
A.位图和背景像素作异或操作->使用模板位图作与操作->原位图与背景作异或操作
B.使用模板位图作与操作->原位图与背景作异或操作->位图和背景像素作异或操作
C.位图和背景像素作异或操作->原位图与背景作异或操作->使用模板位图作与操作
D.位图与背景作异或操作->位图和背景像素作异或操作->使用模板位图作与操作
28.在BitBlt函数中进行光栅化处理方式中,哪1个值说明是要进行或运算?
(D)
A.SRCAND
B.SRCCOPY
C.SRCINVERT
D.SRCPAINT
29.动态链接库文件的后缀名为(B)。
A.lib
B.dll
C.exe
D.obj
30.下列哪个缩写是微软提供的C++语言的帮助库?
(B)
A.MFC
B.MSDN
C.API
D.SDK
31.生成1个只具有确定和取消按钮的消息框,其参数为(C)。
A.MB_OK
B.MB_YESNO
C.MB_OKCANCEL
D.MB_RETRYCANCEL
32.使用GetDC()获取的设备上下文在退出时必须调用(A)释放设备上下文。
A)ReleaseDC()B)deleteC)DeleteDC()D)Detach()
33.项目文件的扩展名是(B)。
A)exeB)dspC)dswD)cpp
34.当滑块滑动时,滑块条控件将发送滚动消息来通知父窗口,垂直滑动条发送(C)消息。
A)WM_CHARB)WM_HSCROLLC)WM_VSCROLLD)WM_CHANGE
35、消息循环的处理过程如下:
(A)函数不断侦察应用程序的消息队列,若队列为空,该函数一直运行,不返回;一旦发现队列不为空,便取出一条消息,把它拷贝到msg结构变量中,同时该函数返回TRUE;得到消息msg后,(B)把来自键盘的命令翻译成WM_XXX消息命令形式。
(E)函数通知Windows把每个消息分发给相应的窗口函数。
应用程序并不直接调用窗口函数,而由Windows根据消息去调用窗口函数,因此,窗口函数经常被称为回调函数。
A、GetMessage()
B、translateMessage()
C、PostMessage()
D、SendMessage()
E、DispatchMessage()
36.在进行绘图时,(B)用于指定图形的填充样式,(A)用于指定图形的边框样式。
A、画笔B、画刷C、区域D、位图
37、Windows操作系统同时也是一个大的函数库,其中包含了数以千计的函数,这些函数都被封装在一个接口中,这个(B)就是Windows应用程序编程接口(WindowsApplicationProgrmmingInterface),简称WindowsAPI。
A类B接口C动态链接库D结构体
38、用户从所有可能的操作中任意选择,被选择的操作会产生某些特定的(c),这些事件发生后的结果是向程序中的某些对象发出(c),然后这些对象调用相应的(c)来完成特定的操作。
A:
消息,事件,程序B:
消息,命令,消息处理函数C:
事件,消息,消息处理函数D:
事件,消息,程序
39、消息的组成(c)
A:
消息名称(UINT)
B:
消息名称(UINT)和参数(PARAM)
C:
消息名称(UINT)和两个参数(WPARAM,LPARAM)
D:
消息名称(UINT)和两个参数(HPARAM,LPARAM)
40、程序在(b)对消息进行分析
A:
入口函数(WINMAIN)中
B:
在窗口的过程(WNDPROC)中
C:
收到消息时
D:
消息发生时
41、一个消息(b)
A:
可以不被窗口接受
B:
必须由一个窗口接收
C:
可以由一个或多个窗口接收
D:
必须由多个窗口接收
42、当没有为某消息编写消息处理时(c)
A:
不进行处理
B:
程序出错
C:
默认的窗口过程进行处理
D:
无法发出此消息
43、系统通过(d)在整个系统中唯一标识一个窗口
A:
文件句柄B:
设备句柄C:
内存句柄D:
窗口句柄
44、系统是根据()来确定要接收消息的窗口的(a)
A:
hWndB:
messageC:
wParamD:
lParam
45、当同时有多个消息时,系统将(c)
A:
内存B:
硬盘C:
将消息放入消息队列中D:
优盘
46、在WinMain函数的原型中HINSTANCEhInstance定义的是
A:
当前实例句柄B:
当前实例句柄C:
指向命令行参数的指针D:
窗口的显示状态
47、在WinMain函数的原型中HINSTANCEhPrevInstance定义的是
A:
当前实例句柄B:
当前实例句柄C:
指向命令行参数的指针D:
窗口的显示状态
48、在WinMain函数的原型中LPSTRlpCmdLine定义的是
A:
当前实例句柄B:
当前实例句柄C:
指向命令行参数的指针D:
窗口的显示状态
49、在WinMain函数的原型中intnCmdshow)定义的是
A:
当前实例句柄B:
当前实例句柄C:
指向命令行参数的指针D:
窗口的显示状态
50、以下哪个不是WinMain函数中完成下面的操作:
A:
注册窗口类B:
创建应用程序主窗口C:
进入应用程序消息循环D:
51、下面说法错误的是(D):
A一个Windows程序可以包含多个窗口过程
B一个窗口过程总是与调用RegisterClass注册的特定窗口类相关联
CCreateWindow函数根据特定窗口类创建一个窗口,但基于一个窗口类,可以创建多个窗口
D窗口过程必须由程序调用,而不是由Windows本身直接调用
52、WINDOWS应用程序中使用的各种WINDOWSAPI函数声明,宏定义,数据类型定义,()是主要的包含文件,它包含了其他windows的头文件,这些头文件的某些也包含了其他头文件。
ASTDIO.HBWINDEF.HCWINUSER.HDWINDOWS.H
53、()定义了Windows的所有数据类型、函数调用、数据结构和常数标识符,它是Windows文档中的一个重要部分
Awindows的头文件BWINDOWS.HCWINDEF.HDWindows文档
54、关于程序中主函数的下列说法中正确的是(A)
A在WINDOWS应用程序中,是以WinMain()函数作为程序的入口
B每个WINDOWS应用程序都有一个或多个WinMain()函数
CDOSC程序是可以不从main()函数开始运行
D以上说法没有正确的
55、WinMain函数采用WINAPI调用协议。
WINAPI是一个在(C)中定义的宏,相当于PASCAL调用协议。
AWINDEF.HBWINNT.HCWINDOWS.HDWINBASE.H
56、下面关于WinMain()函数的参数的说明错误的是(B)
AhInstance当前实例句柄BhPrevInstance:
后一个实例的实例句柄ClpCmdLine命令行参数DnCmdShow:
窗体显示方式
57、WinMain函数正常结束时,返回窗体运行期间所接受的最后一个消息的(A),非正常结束返回0
A短形参量B长形参量C句柄D标识号
58、
(1)注册窗体类函数声明如下:
ATOMRegisterClassEx(CONSTWNDCLASSEX*lpwcx)如果成功返回(A)值,否则返回0。
A非0值B1C2DNULL
59、lpwcx是一个指向(C)的指针变量。
A当前实例句柄B窗体显示方式C窗体类结构类型D前一个实例的实例句柄
60、窗体风格各个选项可以用(B)运算符联合表示。
AAND(&)BOR(|)C逻辑与(&&)D逻辑或(||)
61、下面关于WNDCLASS的参数的说法中错误的是(C):
AlpfnWndProc是所有基于这个类来创建的窗口过程的地址
BlpszClassName是窗口类的文本名
ChbrBackground的类型是HCURSOR
DhInstance是程序实例句柄
62、建立窗体函数如果成功返回新窗体句柄,否则返回(D)
A非0值B1C2DNULL
63、当创建一个“最高级”窗口,与应用程序窗口时,函数CreateWindow()的第八个参数,即注释为“父窗口句柄”的参数应设置为(B):
A桌面窗口的句炳BNULLC0D1
64、在函数CreateWindow()调用返回后,下面说法错误的是(A):
A如果成功返回新窗体句柄,否则返回NULL。
B如果成功返回新窗体句柄,否则返回0。
C如果成功返回非0值,否则返回NULL。
D如果成功返回非0值,否则返回0。
65、在函数CreateWindow()调用返回之后,Window内部(B):
A已经创建了这个窗口,但还未分配内存
B已经创建并分配了内存
C还未真正创建窗口,等待分配内存
D还未真正创建窗口,但已经分配内存
66、关于函数ShowWindow(hwnd,iCmdShow),下面说法错误的是(D):
AhWnd是窗体句柄
BnCmdShow是窗体显示方式
CnCmdShow与WinMain函数定义的窗体显示方式相同
DnCmdShow与WinMain函数定义的窗体显示方式必须不同
67、关于函数UpdateWindow()的说法正确的是(D):
A该函数的作用是将窗口从新绘制
B调用该函数后,该函数发出WM_PAINT消息
C该函数将消息发送给窗口函数进行处理
D以上答案都正确
68、下面关于消息循环的说法错误的是(D):
AWindows为当前运行的每个Windows程序维护一个“消息队列”
B程序通过执行一块被称为“消息循环”的代码从消息队列中取出消息
C消息循环从GetMessage调用开始,它从消息队列中取出一个消息
DGetMessage通常将一个指向msg的MSG结构的指针直接传递给窗口函数WndProc
69、GetMessage对于除了WM_QUIT之外的从消息队列中取出的所有消息都返回(A)
A非0值B0C1DNULL
70、在(D)之后,WinMain退出消息循环
A用户通过单击Close按钮或在系统菜单选择Close发出WM_DESTROY消息
B结束对任何消息的DispatchMessage调用
C通过调用函数PostQuitMessage(0)在程序的消息队列中插入一个WM_QUIT消息
D在GetMessage取到一个WM_QUIT消息,程序继续执行returnmsg.wParam
71、下面说法错误的是(B):
A窗口过程接受的每一个消息都是用一个数值来表示的
B窗口过程在处理消息时,必须返回1
C窗口过程不予处理的所有消息应该被传给名为DefWindowProc的Windows函数。
D从DefWindowProc函数返回的值必须由窗口过程返回
72、下面那一步确定了在窗口中的客户区域中显示什么,以及在窗口中怎样响应用户输入(D):
A注册窗口类B创建窗口C显示窗口D窗口过程
73、关于窗口过程的说法正确的是(A)
A一个窗口过程能处理基于同一个窗口类创建的多个窗口的消息
B一个窗口过程只能处理基于同一个窗口类创建的一个窗口的消息
C一个窗口过程能处理基于多个窗口类创建的多个窗口的消息
D一个窗口过程只能处理基于多个窗口类创建的一个窗口的消息
74、消息的4个参数中,表示消息类型的参数是()。
AHWNDhwnd
BmessageID
CwParam
DlParam
75、下列各消息中,与程序的菜单命令、工具栏按钮或对话框按钮相对应的消息是()。
AWM_CHAR
BWM_COMMAND
CWM_CREATE
DWM_PAINT
76、Windows程序中,用于表示通用字符的数据类型是()。
Achar
Bunsignedshort
CTCHAR
Dunsignedchar
77、下列数据类型中,表示设备上下文句柄的数据类型是()。
AHWND
BHDC
CHMENU
DHPEN
78、各种设备描述表的中,可以使用CreateComPatibleDC函数创建获得的设备描述表类型是()。
A显示设备描述表
B打印设备描述表
C内存设备描述表
D信息设备描述表
79、DC中,可用于绘制圆角矩形的函数是()。
ALineTo(hdc,intx,inty)
BPolyBezierTo(hdc,constPOINT*lpPoints,intnCount);
CBitBlt(hdc,intx,inty,intnWidth,intnHeight,CDC*pSrcDC,intxSrc,intySrc,DWORDdwRop);
DBOOLRoundRect(hdc,LPCRECTlpRect,POINTpoint);
80、下列映射模式中,以0.01mm为逻辑单位的映射模式为()。
AMM_LOMETRIC
BMM_HIMETRIC
CMM_LOENGLISH
DMM_HIENGLISH
二.多选题
1.已知严格按照匈牙利命名法命名的变量m_pTemp,则以下说法正确的是(BC)。
A)该变量是1个全局变量
B)该变量是1个类成员变量
C)该变量是1个指针变量
D)该变量一定是1个私有变量
2下列哪种情况下系统可能向窗口发送WM_PAINT消息?
(ABCD)
A)窗口最初创建时
B)窗口移动后部分区域由不可见变为可见
C)窗口大小改变后
D)滚动条滚动后
3.在注册窗口类中,不需要进行的操作是(BC)。
A)载入图标
B)确定窗口大小
C)确定窗口标题
D)确定窗口类名称
4.关于PeekMessage和GetMessage的说法正确的是(AB)
A)PeekMessage立即返回
B)GetMessage将会等待消息到来
C)PeekMessage等待消息到来
D)GetMessage立即返回
5.关于动态菜单,以下说法正确的是(BD)。
A)函数LoadMenu可以弹出菜单
B)函数CreatMenu用于建立空菜单
C)函数DeleteMenu用于删除整个菜单
D)函数InsertMenu用于在菜单中插入1个菜单项
6.以下关于Windows的鼠标消息,说法正确的是(BD)。
A)鼠标的按键消息种类可以从wParam中得到
B)鼠标的按键消息种类可以从message中得到
C)鼠标的位置信息可以从wParam中得到
D)鼠标的位置信息可以从lParam中得到
7.已知语句SetTimer(NULL,1,100,NULL),则以下说法正确的是(AD)。
A)设置了一个定时器,该定时器不能正常起作用
B)设置一个定时器,能够正常起作用
C)设置了一个定时器,时间间隔为1秒
D)设置了一个定时器,时间间隔为100毫秒
8.下列选项中属于WindowsGDI资源的是(ABC)。
A)位图
B)画笔
C)字体
D)窗口
9.能用于绘制直线的函数为:
(AB)
A)LineTo
B)Polyline
C)Arc
D)PolyBezier
10.画笔的线型包括:
(ABD)
A)实线
B)点划线
C)波浪线
D)虚线
11.创建画刷的函数有:
(ABC)
A)CreateHatchBrush
B)CreateSolidBrush
C)CreatePatternBrush
D)CreateLogicBrush
12.在Windows消
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 系统 Windows 编程 复习题