1, 要运行一个C语言编写的应用程序如下:
main() {
printf("hello world");
}
在VC6的开发环境中,应该建立哪种类型的工程?B
A, Win32 Application
B, Win32 Console Application
C, MFC AppWizard (exe)
D, Utility Project
2, 在VC6环境中,把应用程序输入后,编译链接后出现如下错误,
mytest.cpp(192) : fatal error C1010: unexpected end of file while looking for precompiled header directive
应该如何解决: C
A, 检查编写程序中的大小写问题
B, 检查编写程序中是否有未闭合的大括号
C, 检查是否在程序最开始包含了预编译头文件
D, 检查是否有未定义的变量名
3, 关于VC6建立的工程的说法,正确的是:C
A,工程只能包含.cpp和.h类型的文件
B,工作区文件的后缀是.dsp
C, 用鼠标双击工作区文件可以打开整个工程
D,在VC的FileView中可以看到工程中所有的文件,包括工作区文件,项目文件等
4,下面关于在VC6环境下调试运行的说法错误的是 A
A,设置合适的断点(F9),按Ctrl+F5开始调试运行
B,设置合适的断点,按F5开始运行
C,调试时,可以随时观察断点处的变量值
D,在调试运行过程中,可随时按下Stop Debugging(Shift+F5)结束调试运行
5,在VC6中提供了成员方法的自动列表和方法参数的自动提示功能,但有时不能正常显示,这是应该删除
该工程目录下那种后缀类型的文件后,再次打开工程,就可以正常提示了。B
A, clw
B, ncb
C, opt
D, aps
6,有关句柄(handle)的说法,下列不正确的是:C
A 句柄是一个4字节长的整数值
B 句柄用来标识应用程序中不同的对象或同类对象中的不同实例
C 消息是句柄的一种
D 画笔的句柄类型是HPEN,画刷的句柄类型是HBRUSH
7, 在一个Windows API的基本应用程序框架中,有如下的消息循环:
while( GetMessage(&Msg, NULL, 0, 0))
{
TranslateMessage( &Msg) ;
DispatchMessage( &Msg) ;
}
下面哪个消息使得该消息循环退出运行,从而终止整个应用程序的运行。B
A WM_DESTROY
B WM_QUIT
C WM_CLOSE
D WM_CREATE
8, ①是Windows应用程序的基本操作单元,提供应用程序与用户之间交互
的接口环境;Windows程序设计是一种事件驱动的编程方法,它使用②描述
事件发生的信息;Windows应用程序使用③标识应用程序中不同对象的不同
对象和同类对象中不同的实例,如按钮、图标、滚动条、控件或文件等;
Windows应用程序设计中变量名的命名一般遵循④,它将变量的数据类型作为前
缀,后接表示其意义或功能的名称,如lpszFacename。 B
A 消息,窗口,指针,匈牙利表示法
B 窗口,消息,句柄,匈牙利表示法
C 窗口,消息,句柄,前缀表示法
D 消息,窗口,指针,前缀表示法
9,RegisterClass这个Windows API函数的作用是:A
A 注册一个窗口类
B 窗口的显示
C 创建一个窗口类的实例
D 窗口类的定义
10,关于Windows API编程时的窗口函数(WndProc)的说法,不正确的是:D
A 它是一个回调函数
B 它内部的switch…case分支判断用于不同类型消息的处理
C 它有四个入口参数,其意义和消息结构体MSG的意义相同
D 如果使用全空的窗口函数(内部没有代码),Windows也会负责按照缺省方法处理消息
11, Windows窗口对刷新请求的相应,下列哪种情况下不需要应用程序考虑:D
A,窗口移动后的刷新
B,被覆盖区域的刷新
C,通过滚动条滚动窗口时
D,图标或光标穿越窗口时
12,下列关于BeginPaint和GetDC两个函数的说法,不正确的是:C
A,前者一般和EndPaint成对出现,后者与ReleaseDC成对出现
B,前者获得的设备环境的操作区域有可能不是整个客户区;后者获得的设备环境的操作区域为整个客户区
C,只能够通过这两种方法获得设备环境句柄
D,前者调用后可获得无效区域的坐标,后者无法获得无效区域的坐标
13,下列有关Windows绘图中映像模式的说法,不正确的是:D
A,缺省的映像模式是MM_TEXT
B,只有MM_ANISOTROPIC模式下,X,Y轴的比例可以不是1:1
C,在所有的映像模式下,缺省时窗口左上角的坐标都是(0,0)
D,MM_HIMETRIC模式下,X轴正方向向右,Y轴正方向向下
14, 有关Windows文本与字体的说法,错误的是:D
A,设置字体的前景和背景色分别使用SetTextColor和SetBkColor
B,使用CreateFont创建字体时可以改变字体的大小,字体的类型等
C,字体句柄的数据类型是HFONT
D,字体输出函数TextOut参数中用到的坐标是设备坐标
15,能够同时获取当前使用的字体的高度,宽度,字符集等信息的Windows API函数是:B
A,GetTextExtentPoint32
B,GetTextMetrics
C,GetObject
D,GetTextInfo
16, 下列关于Windows应用程序对键盘响应的说法,正确的是:D
A,键盘的扫描码不依赖于具体设备
B,Windows应用程序不使用消息来处理键盘响应
C,按下键盘上的一个键,不可能同时产生按键消息和字符消息
D,WinMain函数的消息循环中的TranslateMessage函数用于把按键消息转换为字符消息
17,下列关于Windows应用程序对鼠标响应的说法,正确的是:B
A,只有活动窗口才能接受鼠标事件
B,可以调用函数SetCapture()实现对鼠标的捕捉,且捕捉鼠标后系统的键盘功能暂时失效
C,用户只能调用系统定义的鼠标的光标形状,不能自定义光标
D,可以通过相应单一类型的鼠标消息来响应鼠标的拖动事件
18,在Windows API开发的应用程序框架中,下列哪种方法不能加载菜单:D
A,在窗口类的定义时,把结构体WNDCLASS的lpszMenuName设置为合适的菜单名
B,在创建窗口时,首先调用LoadMenu获得菜单句柄,然后调用函数CreateWindow加载该菜单
C,在应用程序中调用LoadMenu获得菜单句柄后,调用函数SetMenu动态加载菜单
D,在窗口处理函数中,针对菜单消息设置合适的消息响应
19, 菜单资源定义如下,现已获得该“文件”子菜单的句柄hsubmenu
MENU1 MENU DISCARDABLE
BEGIN
POPUP "文件(&F)"
BEGIN
MENUITEM "新建(&N)\t Ctrl+N", IDM_NEW
MENUITEM "打开(&O)\t Ctrl+O", IDM_OPEN
MENUITEM "关闭(&C)", IDM_CLOSE
MENUITEM SEPARATOR
MENUITEM "保存(&S)\t Ctrl+S", IDM_SAVE
MENUITEM "退出(&X)", IDM_EXIT
END
END
要把菜单ID为IDM_OPEN的菜单设置为禁止状态并变灰,下列哪个API函数及其参数设置是正确的: A
A、EnableMenuItem( hsubmenu, 1, MF_BYPOSITION| MF_GRAYED);
B、EnableMenuItem( hsubmenu, 2, MF_BYPOSITION| MF_GRAYED);
C、DisableMenuItem( hsubmenu, 2, MF_BYPOSITION | MF_GRAYED);
D、EnableMenuItem( hsubmenu, IDM_OPEN, MF_BYPOSITION|MF_GRAYED)。
20,给菜单ID为IDM_SAVE的菜单命令增加一个Ctrl+S的加速键资源,正确的写法是:A
A,ACCE1 ACCELERATORS {
"^S", IDM_SAVE
}
B,ACCE1 ACCELERATORS {
"^S", IDM_SAVE, VIRTKEY
}
C,ACCE1 ACCELERATORS {
"S", IDM_SAVE, ASCII,CONTROL
}
D,ACCE1 ACCELERATORS {
"^S", IDM_SAVE, CONTROL
}
21,下面有关Windows API开发中,模态对话框的说法,错误的是:D
A,模态对话框通过调用DialogBox函数显示
B,模态对话框通过调用EndDialog函数关闭
C,模态对话框打开时,不能够切换到其父窗口上进行任何操作
D,模态对话框必须设置WS_VISIBLE显示样式才能正常显示
22,如何获得一个位图的尺寸(高度和宽度),调用下面那个Windows API函数 A
A,GetObject
B,LoadBitmap
C,SelectObject
D,CreateCompatibleBitmap
23,VC6中如何改变按钮上显示的名称?A
A,在资源编辑器中,选择该按钮,在右键菜单中选择属性(Properties),改变属性框的标题(Caption)字段的值
B,在资源编辑器中,选择该按钮,在右键菜单中选择属性(Properties),改变属性框的ID字段的值
C,在类向导中,选择"Message Map"选项卡,为按钮指定合适的名称和相应函数
D,在类向导中,选择"Member Variables"选项卡,为按钮指定合适的名称和变量
24,给一个应用程序添加了一个对话框,又在对话框加入了一个编辑框,需要把该编辑框的值初始设置为"test",
应该把该操作加入到:(假设应用程序主窗口的窗口处理函数是WndProc,对话框处理函数是DlgProc) B
A,窗口处理函数WndProc中对WM_CREATE消息的处理中
B,对话框处理函数DlgProc中对WM_INITDIALOG消息的处理中
C,对话框处理函数DlgProc中对WM_CREATE消息的处理中
D,窗口处理函数WndProc中对WM_NEXTDLGCTL消息的处理中
25,为应用程序添加一个快捷菜单(右键菜单),应该对下面哪个消息作出相应代码:A
A,WM_CONTEXTMENU
B,WM_RBUTTONDOWN
C,WM_LBUTTONDOWN
D,WM_POPUPMENU
26,让简单的静态控件能够接受输入,应该:A
A,给它加上SS_NOTIFY的风格
B,给它加上SS_COMMAND的风格
C,在静态文字上加上"&"字符
D,在静态文字上加上"%"字符
27, 对于非模态对话框,要使其能够在其对话框处理函数中响应用户输入,在消息循环中应该:B
A, 和一般消息循环无不同之处
B, 必须调用IsDialogMessage截获消息
C, 必须调用TranslateAccelerators翻译消息
D, 必须调用SendMessage发送消息
28,以下有关MFC中的类的说法,不正确的是:A
A,CObject类是MFC所有类的基类
B,CView类是CWnd类的子类
C,CDialog类是CWnd类的子类
D,CArchive类可以支持串行化操作
29,以下哪个操作是CObject类不具有的:D
A,对象的建立和删除
B,为对象诊断输出
C,提供运行时信息
D,创建应用程序窗口
30,在VC6开发环境中,双击工作区文件,就能打开该工作区及其包含的工程,其后缀是:A
A,.dsw
B,.dsp
C,.rc
D,.clw
31,以下哪个函数能够实现由整型到字符型的转换:A
A itoa
B atoi
C sprintf
D strtol
32,下列有关编辑框风格的说法,错误的是:B
A, 可以通过设置编辑框风格来自动转换字符
B,如果设置了ES_READONLY风格,在应用程序中也无法设置编辑框的文本
C,只有设置了ES_MULTILINE风格,才能显示多行文本框
D,只有设置了ES_WANTRETURN风格,按下Enter键时才能插入回车符(\n)
33,下面有关CMenu类的说法,错误的是:A
A,CMenu类是CWnd类的子类
B,由CMenu类对象可以得到菜单句柄HMENU,由菜单句柄HMENU也可以得到对应的CMenu类对象
C,实现带有图形的自绘菜单的CMenu类成员方法是DrawItem和MeasureItem
D, 用于实现快捷菜单(右键菜单)的CMenu类的成员方法是TrackPopupMenu
34,有关滚动条的说法,错误的是:B
A,滚动条可分为滚动条控件和属于窗口的滚动条
B,滚动条发送WM_COMMAND消息
C,滚动条控件创建后必须对其动作标识进行编程才能使其正确动作
D,滚动条控件创建后需要设置变化范围和初始位置才能正确动作
35,关于滚动条类CScrollBar的说法不正确的是:A
A,CScrollBar是CControlBar的子类
B,CScrollBar类的成员方法SetScrollInfo和SetScrollRange都能够设置滚动条的变化范围
C,CScrollBar的成员方法ShowScrollBar可以控制滚动条的显示和隐藏
D,CSCrollBar的成员方法GetScrollLimit可以获得滚动条的变化的最大值加1
36,有关按钮控件的说法,错误的是:A
A,普通按钮、单选按钮、多选按钮、分组框都是不同风格的按钮
B,按钮的标题(Caption)就是显示在按钮上的文本
C,图形按钮的类是CBitmapButton
D,按钮控件的通知消息类型是WM_COMMAND,其参数(lParm和wParm)含义和命令消息(WM_COMMAND)相同
37,有关工具条的说法,错误的是:C
A,工具条上按钮的ID可以和菜单ID相同
B,工具条的命令提示、工具提示,大小可变等特性可以通过设置相应的风格实现
C,工具条的显示和隐藏可以通过CToolBar的SetStyle成员函数设置合适的属性实现
D,一个窗口可以同时显示多个工具条
38,有关文档/视图类的说法,正确的是:D
A,文档类不能处理WM_COMMAND消息
B,一个文档可以有多个视图,一个视图可以有多个文档
C,MFC的单文档(SDI)应用程序框架和多文档(MDI)应用程序框架中的CMainFrame类都是CFrameWnd的子类
D,视图类的OnDraw成员方法在窗口需要重绘时被调用
39,下面那个方法不是CDocument类的成员方法 C
A,AddView
B,UpdateAllViews
C,GetDocument
D,GetDocTemplate
40,下面那个方法是CDocTemplate类的成员方法 D
A,GetNextDoc
B, GetDocument
C, GetDocTemplate
D,UpdateAllViews
(个人原创,引用请指明出处,谢谢。yanqlv)