文档库 最新最全的文档下载
当前位置:文档库 › VC++程序设计

VC++程序设计

VC++程序设计
VC++程序设计

一、填空题:(每小题2分,共20分)

1.工程名称为kkk的单文档应用程序,默认情况下其文档类名称为()

2.切分窗口有两种类型:()切分和()切分。

3.ActiveX控件有三个属性集:()、()和方法。

4.Windows操作系统支持两种形式的多任务:基于()的多任

务和基于()的多任务

5.Windows提供了四种同步对象:()创建或打开一个命名的或匿名的事件对

象)、(把指定的事件对象设置为有信号状态)、(把

指定的事件对象设置为无信号状态/)、(请求事件对象)事件对象、和临界区。

6.在Windows系统中,消息有数百种之多,可以大致分为以下三类:

()、()和命令消息

7.套接字的数据结构中包含的信息应该有:()、()和协议

8.ActiveX控件的二进制文件的扩展名为(CAB)。

9.若从扩展动态链接库中导出类,需在定义该类时添加关键字()

10.画刷共有三种基本类型:()、()和图案画刷。

二、选择题:(每小题2分,共40分)

1.下列()函数用于弹出模式对话框?

(A) OnInitDialog (B) DoModal (C) OnOK (D) OnCancel

2.( )函数用于设置注册数据库,注册文档模板等初始化工作。

(A)I nitInstance (B)OnDraw (C)OnOK (D)OnCancel

3.( )函数作用是初始化一个新文档。

(A)GetDocument (B) DeleteContent (C) OnNewDocument (D) Dump

4.自动化客户可以通过自动化服务器的()来控制自动化服务器。

(A)过程 (B)属性 (C)事件 (D)方法

5.所有的标准Windows消息都以WM_为前缀,标准Windows消息应该由

相应的窗口类和视图类进行处理,它又分为以下几类:()

(A)鼠标消息 (B)控件消息 (C)键盘消息 (D)命令消息(E)窗口消息

6. 下列哪些属于文档与视图之间相互作用的函数?()

(A)Serialize (B)OnUpdate (C)GetDocument (D)GetNextView

7.对于SDI应用程序,命令传递顺序为:()

(A)文档->视图->SDI主框架窗口->应用程序

(B)视图->文档 ->SDI主框架窗口->应用程序

(C)应用程序->文档->视图->SDI主框架窗口

(D)应用程序->视图->文档 ->SDI主框架窗口

8. 下列哪个函数将32位网络字节顺序转换到主机字节顺序?()

(A) Ntohs (B)Ntohl (C)Htons (D)Htonl

9. 在菜单状态更新机制中,更新处理函数以一个指向()对象的

指针作为参数,处理函数可以利用该指针对菜单项进行状态设置。

(A)CmainFrame (B)Cdocument (C)CView (D)CCmdUI

10.()类是绝大多数MFC类的根类。

(A) CMainFrame (B) CWinApp (C) CObject (D) CView

11.回车键所能响应的键盘消息是()

(A)WM_CHAR (B)WM_KEYDOWN (C)WM_KEYUP (D)WM_TIMER

12. 信号量对象允许有限数量的线程同时访问一个共享资源。每当有一个新

线程要访问共享资源时,首先调用函数()检查信号量计数

器是否大于0。

(A)SuspendThread (B)WaitForSingleObject (C)ResumeThread (D)sleep

13.动态链接库工程经编译后会生成扩展名为()的新文件

(A) .ocx (B) .dll (C) .lib (D) .c

14.()函数可以完成在下拉列表框中查找是否含有某字符串的功能。

(A)GetWindowText (B)SetCurSel (C)InsertString (D) FindStringExact

15.获取列表框中被选中字符串索引值的函数是()

(A) GetCurSel (B) GetWindowText (C) InsertString (D) AddString

16.若要设置编辑框属性为只读,应选择下列()属性。

(A) Read-Only (B) Auto Hscroll (C) Want return (D) Border

17.获取滚动条中滚动块位置的函数是()

(A)ReplaceSel(B) GetScrollPos(C) SetSel(D) SetScrollRange 18.能在视图区域输出字符串的函数是:()

(A) MessageBox (B)MessageBeep (C) TextOutW (D) SetCheck

19.能控制计算机扬声器发出响声的函数是:()

(A) MessageBox (B)MessageBeep (C) Sleep (D) AfxMessageBox

20.将记录集指针移到下一条记录的函数是:()

(A) MoveFirst (B) MovePrev (C) MoveNext (D) MoveLast

三、简答题:(每小题5分,共25分)

1.流式套接字与数据报套接字不同之处

流式套接字要分客户和服务器,而数据报不用分

流式套接字适合传输数据量大的,而数据报套接字适合传递数据量少的

流式套接字建立麻烦,数据报套接字建立简单

客户的流式套接字只能向一个方向传递,数据报套接字可以接受任何方向的来得数据,并可以向任何地址发送数据报流套接字比数据报套接字好,这样你可以不必管理底层细节,只需要相信TCP就可以保证传送的数据是依次,可靠的传送的,缺点是效率相对数据报套接字低。

使用数据报套接字,可以让你更快,但你得自已保证数据是否依次,准确的传送来的,如使用数据报套接字,你可能先收到后发的,后收到先发的,还有可能收漏,数据报套接字是用来发送数据报的,是面向无连接不可靠的传输(在今天这个网络里,其实已经相当可靠)流套接字是面向连接可靠的传输。服务器通过转发实现一个客户与另一个客户的数据传送。当向另一个客户转发时,他必须知道对方IP(或套接字等),所以要求转发的客户必须提供关于接受方的信息,否则服务器不知道向哪转发。

2.对话框可分为哪两大类?其各自特点是什么?

软件一般分为系统软件和应用软件两大类。系统软件是直接控制和协调计算机工作的软件,应用软件是完成某些具体工作和任务的软件。(1)常见的操作系统有:DOS、WINDOWS、UNIX、LINUX等,Visual Basic是一个计算机语言编译系统,它属于系统软件。(2)应用软件:应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。应用软件是人们为了各种实际工作的需要而研究开发出来的软件(一般可分为通用软件和专用软件两种。Word2000、Excel、Wps等是通用软件)

3.CDialog类的四个基本的函数是什么?

构造函数、析构函数与赋值函数是每个类最基本的函数。它们太普通以致让人容易麻痹大意,

其实这些貌似简单的函数就象没有顶盖的下水道那样危险。

每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类A,如果不想编写上述函数,C++编译器将自动为A 产生四个缺省的函数,例如:

A(void); // 缺省的无参数构造函数

A(const A &a);

// 缺省的拷贝构造函数~A(void); // 缺省的析构函数A & operate =(const A &a); // 缺省的赋值函数4.通用对话框类包括哪些类?各自功能?

5.全服务器运行的几种方式

四、编程题:(每小题15分,共15分)

1.辅线程计算10!,主线程则将辅线程计算结果乘以2

VC++程序设计大作业——熊武

武汉轻工大学VC++程序设计大作业 院系电气与电子工程学院 班级 学号1204 姓名 日期2013.11.22

1题目 编写MFC下的单文档程序,通过鼠标点击选择两个点,作为矩形左上角、右下角,然后绘制矩形。(对应12题) 2思路 首先点击鼠标,选中左上角,然后拖动鼠标,在右下角拿起,这样矩形就就可以实现了。 3程序实现过程 首先建立MFC单文档程序

然后建立类向导 添加鼠标事件

添加CPoint成员变量m_OrigPoint 4关键代码 // RectangleView.cpp : implementation of the CRectangleView class // #include "stdafx.h" #include "Rectangle.h" #include "RectangleDoc.h" #include "RectangleView.h"

#ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CRectangleView IMPLEMENT_DYNCREATE(CRectangleView, CView) BEGIN_MESSAGE_MAP(CRectangleView, CView) //{{AFX_MSG_MAP(CRectangleView) ON_WM_LBUTTONDOWN() ON_WM_LBUTTONUP() //}}AFX_MSG_MAP // Standard printing commands ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CRectangleView construction/destruction CRectangleView::CRectangleView() { // TODO: add construction code here } CRectangleView::~CRectangleView() { } BOOL CRectangleView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return CView::PreCreateWindow(cs); }

VC程序设计 课程设计报告书

VC程序设计课程设计 报告书 设计题目:简单绘图软件 院系:信息工程学院 班级:软件1101 组别:第二十二组 学号: 1110024130 姓名: 方锦 起止日期:2012年12月10日~2012年12月20日指导教师:张顺利

目录 绪论 -------------------------------------------------------------------------------- 3一概要设计 -------------------------------------------------------------------- 5 1.主要功能---------------------------------------------------------------------- 5 2.设计的概要设计功能模型框架图---------------------------------------- 5 二设计的详细设计------------------------------------------------------------- 5 1工具栏的编辑---------------------------------------------------------------- 6 2状态栏的编辑 --------------------------------------------------------------- 6 四编码和测试---------------------------------------------------------------- 9五设计总结 ------------------------------------------------------------------ 10 1.过程分析-------------------------------------------------------------------- 10 2.经验教训及分析 -----------------------------------------------------------11 3程序维护 --------------------------------------------------------------------11 六参考文献-------------------------------------------------------------------- 12

最新vc++程序设计

3.25设计一个类CRectangle,除了有相关的数据成员,该类要求包含下述成员1 函数:矩形从一个位置移动到另一个位置的Move()函数;改变矩形大小的Size 2 ()函数;返回矩形左上角的坐标坐标值的Where()函数;计算矩形面积的Area 3 ()函数。 4 代码如下:#include 5 #include 6 class CRectangle 7 { 8 private: double X; 9 double Y; 10 double Length; 11 double Width; 12 public: 13 CRectangle(double s, double m, double L, double W) 14 { 15 X=s; 16 Y=m; 17 Length=L; 18 Width=W; 19

} 20 ~CRectangle() 21 {} 22 void Move(double , double); 23 void Size(double ,double); 24 void Where(); 25 void Area(); 26 }; 27 void CRectangle::Move(double x, double y) 28 { 29 cout<<"矩形按向量("<

VC++程序设计练习题

南京工业大学继续教育学院 《VC++程序设计》练习题 2010学年第一学期使用班级:H工升本/HY交升本/H自升本 一、选择题(每小题2分,共计40分) (1)下列关于栈的叙述正确的是 A)栈是非线性结构B)栈是一种树状结构 C)栈具有先进先出的特征D)栈具有后进先出的特征 (2)结构化程序设计所规定的三种基本控制结构是 A)输入、处理、输出B)树形、网形、环形 C)顺序、选择、循环D)主程序、子程序、函数 (3)结构化程序设计的一种基本方法是 A)筛选法B)递归法C)归纳法D)逐步求精法 (4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是: A)选择B)投影C)连接D)并 (5)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是() A)面向过程B)面向对象C)安全性D)复用性 (6)C++语言的跳转语句中,对于break和continue说法正确的是() A)break语句只应用与循环体中 B)continue语句只应用于循环体中 C)break是无条件跳转语句,continue不是 D)break和continue的跳转范围不够明确,容易产生问题 (7)for(int x=0,y=o;!x& &y<=5;y++)语句执行循环的次数是() A)0B)5C)6D)无次数 (8)考虑函数原型void test(int a,int

b=7,char="*"),下面的函数调用中,属于不合法调用的是() A)test(5); B)test(5,8); C)test(6,"#") D)test(0,0."*"); (9)下面有关重载函数的说法中正确的是() A)重载函数必须具有不同的返回值类型;B)重载函数形参个数必须不同; C)重载函数必须有不同的形参列表D)重载函数名可以不同; (10)下列关于构造函数的描述中,错误的是() A)构造函数可以设置默认参数;B)构造函数在定义类对象时自动执行 C)构造函数可以是内联函数;D)构造函数不可以重载 (11)下面描述中,表达错误的是() A)公有继承时基类中的public成员在派生类中仍是public的 B)公有继承是基类中的private成员在派生类中仍是private的 C)公有继承时基类中的protected成员在派生类中仍是protected的 D)私有继承时基类中的public成员在派生类中是private的 (14)在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是(B) A)fail B)eof C)bad D)good (15). ( D )能用作用户自定义标识符 A friend B-var C 3xyz D Float (16). 指针可以用来表示数组元素,int a[3][7],表示错误的是___A___ A.*(a+1)[5] B.*(*a+b) C.*(*(a+1)) D.*(a[0][0]+2)

VC++可视化程序设计入门

烟台南山学院计算机系《可视化程序设计Visual C++》作业 2016-2017学年第二学期 班级:计科1401 姓名:毛宗磊 学号:201422031026 专业:计算机科学与技术 指导教师:王玉健

1、创建计算器 1、打开vc6.0编译环境,选择file新建选项,选择工程,选择MFC APPWIZARD(exe),设置工程名字和位置,选择建立对话框,完成基本设置。 2、添加静态文本、编辑框以及按钮,修改基本属性,如图所示 3、创建类向导,在members variables中添加代码,如图所示 4、点击求和按钮,函数的代码如下

5、点击归零按钮,设置代码如下 6、实验结果如下

2、设置背景颜色 1、在文件视图中找到Onpaint()函数,设置代码如下: CRect rect; GetClientRect(rect); CPaintDC dc(this); dc.FillSolidRect(rect,RGB(10,20,180)); CDialog::OnPaint(); 2、设置完成后效果如下:

3、设置变色按钮功能 1、添加一个按钮,设置其基本属性 2、在头文件里定义几个控制颜色的变量 int m_nred; int m_ngreen; int m_nblue; 3、在变色按钮函数内添加如下代码: CColorDialog dlg; if(dlg.DoModal()==IDOK) { COLORREF color=dlg.GetColor(); m_nred=GetRValue(color); m_ngreen=GetGValue(color); m_nblue=GetBValue(color); Invalidate(); } 4、在绘图函数中修改几个变量的值 dc.FillSolidRect(rect,RGB(m_nred,m_ngreen,m_nblue)); 5、效果图如下 4、设置随机色 1、添加一个随机色按钮,设置基本属性

VC 程序设计

一、填空题:(每小题2分,共20分) 1.工程名称为kkk的单文档应用程序,默认情况下其文档类名称为() 2.切分窗口有两种类型:()切分和()切分。 3.ActiveX控件有三个属性集:()、()和方法。 4.Windows操作系统支持两种形式的多任务:基于()的多任务和基于()的多任务 5.Windows提供了四种同步对象:()创建或打开一个命名的或匿名的事件对象)、(把指定的事件对象设置为有信号状态)、(把指定的事件对象设置为无信号状态/)、(请求事件对象)事件对象、和临界区。 6.在Windows系统中,消息有数百种之多,可以大致分为以下三类:()、()和命令消息 7.套接字的数据结构中包含的信息应该有:()、()和协议 8.ActiveX控件的二进制文件的扩展名为(CAB)。9.若从扩展动态链接库中导出类,需在定义该类时添加关键字()10.画刷共有三种基本类型:()、()和图案画刷。 二、选择题:(每小题2分,共40分) 1.下列()函数用于弹出模式对话框? (A)OnInitDialog(B)DoModal(C)OnOK(D)OnCancel 2.()函数用于设置注册数据库,注册文档模板等初始化工作。 (A)I nitInstance(B)OnDraw(C)OnOK(D)OnCancel 3.()函数作用是初始化一个新文档。 (A)GetDocument(B)DeleteContent(C)OnNewDocument(D)Dump 4.自动化客户可以通过自动化服务器的()来控制自动化服务器。 (A)过程(B)属性(C)事件(D)方法 5.所有的标准Windows消息都以WM_为前缀,标准Windows消息应该由相应的窗口类和视图类进行处理,它又分为以下几类:() (A)鼠标消息(B)控件消息(C)键盘消息(D)命令消息(E)窗口消息 6.下列哪些属于文档与视图之间相互作用的函数?() (A)Serialize(B)OnUpdate(C)GetDocument(D)GetNextView 7.对于SDI应用程序,命令传递顺序为:() (A)文档->视图->SDI主框架窗口->应用程序 (B)视图->文档->SDI主框架窗口->应用程序 (C)应用程序->文档->视图->SDI主框架窗口 (D)应用程序->视图->文档->SDI主框架窗口 得分评卷人 得分评卷人

VC++程序设计说明书---计算器

目录 目录 ......................................................................................................................................... I 摘要 ....................................................................................................................................... II 1 设计目的 (1) 2 设计要求 (2) 3 设计内容 (3) 3.1 系统分析 (3) 3.2项目创建 (3) 3.3界面设计 (5) 3.4 代码实现 (8) 3.5 方案分析总结 (17) 总结与致谢 (20) 参考文献 (21) 附件 (22)

摘要 GPA英语全称是grade point average,意思就是平均分。GPA的精确度往往达到小数点后1到2位,如:3.0,3.45。GPA的标准计算方法是将大学成绩的加权平均数乘以4,再除以100,得出平均分。美国的GPA满分是4分,即A=4,B=3,C=2,D=1。一般来讲,百分制中的90分以上可视为4分,80分以上为3分,70分以上为2分,60分以上为1分,五分制中的5分为4分,4分为3分,3分为2分,2分为1分。 这次课程设计完成了一个简单的GPA计算器。本次设计系统具有良好的界面,必要的交互信息和较好的健壮性,使我们能快捷简单地进行操作,即时准确地获得需要的计算的结果,充分降低了数字计算的难度和节约了时间,对人们的生活有一定的帮助。 关键词:GPA;VC++6.0;MFC;控件;

(画图vc程序设计)

西安科技大学 《VC++程序设计》 实验报告 题目画图 院、系(部)计算机科学与技术学院专业及班级 学号 姓名:szgkb 日期 2014.6.2

1 题目要求 建立一个通过“画图”程序,它是基于MFC的多文档应用程序,并且应用程序的风格样式具有Office视觉样式的Ribbon风格。在实现程序的过程中,要创建具有Office视觉样式的项目,再为应用程序的Ribbon功能区添加相应的绘图命令。在实现绘图中,能够很好地使用CDC类中的绘图函数,以实现直线、矩形、圆弧、椭圆等的绘制。了解MFC中设备环境类和坐标映射方式,并且了解常用的GDI对象。扩展“画图”程序实现图形的绘制、保存、滚动等功能。 2 功能需求 选择“绘图”选项卡后,将会展开一些绘图工具。选择某个绘图工具后,便可以在客户区中绘制相应的图形,还可以点击面板上的“画笔颜色”和“填充颜色”按钮,利用弹出的颜色对话框分别设置绘图的颜色及填充的颜色,而且单击“文本”按钮还可以在客户区中输入文本内容,在文本输入中,涉及到文本的颜色、插入符的位置、字体、退格、回车、文本字符等的正确处理。 3 总体设计 建立一个MFC的基于对话框的应用程序,取名为MyPaint1。接下来创建Ribbon 功能区,创建了“工具”、“颜色”两个面板。新建绘图类CDrawShape用以封装自由线、直线、矩形、椭圆、圆的绘制过程。在CMyPaint1View中响应绘图命令并通过添加鼠标左键按下以及移动的消息响应函数(OnLButtonDown、OnMouseMovehe、 OnLButtonup)来实现图形绘制。另外设置插入符、文本内容、文本颜色,来实现文本的输出。最后进行对绘图光标的修改。 3.1 系统模块 3.2 系统业务处理流程运行“画图”程序“绘图”菜单 工具面板 客户区绘图 颜色面板 保存图形

VC++程序设计大作业格式

《Visual C++程序设计》课程大作业 题目名称:多功能模拟时钟 院系名称:计算机科学与信息工程学院 专业班级:10计科嵌入班 学号姓名:李博201003010028 2012 年 5 月

目录 一、选题意义 (1) 二、需求分析 (1) 三、总体设计 (1) 四、详细设计 (1) 五、系统测试 (1) 六、总结 (1) 七、参考文献 (1) 注意:大作用报告完成后要换成自己大作用的实际页码

一、选题的意义 此设计选择意义在于引导学生学会设计多功能模拟时钟显示窗口,进一步掌握Visual C++应用程序,系统的的学习面向对象编程思想,了解MFC架构,逐步熟悉可视化编程环境Visual C++,并在此环境下设计并实现多功能模拟时钟显示程序。 二、需求分析 1、指针式时钟,为便于演示,时钟速度应比实际时间快20倍,即1小时相当于3分钟。 2、时间、日期数字式时钟显示,秒表功能。 3、数字式时钟的时间显示与指针式时钟显示一致。 4、可以进行时间和日期设置 三、总体设计 MainFrame.cpp程序框架类,实现通过工具栏上的按钮调整时间和指针式时钟的运行和停止。具体功能通过OnSettime(),OnStart(),OnStop()等函数实现。 Clock13View.cpp视图类。由于本程序的主要界面均通过函数绘制,故该类为本程序的主要部分,包含函数较多。有: CClock13View(),OnLButtonDown(),SetClock(),GetPoint(),OnDraw(),OnSetTime(),OnT imer(),OnStart(),OnStop()等实现定时、绘制表盘、指针、刷新及数字时钟的输出等功能 其余文件和类均由向导自动生成

VC++程序设计课内实验报告

实验报告 课程名称 VC++程序设计 专业班级电子0942 姓名 学号 电气与信息学院 和谐勤奋求是创新 实验教学考核和成绩评定办法 1.课内实验考核成绩,严格按照该课程教学大纲中明确规定的比重执行。实验成绩不合格者,不能参加课程考试,待补做合格后方能参加考试。 2.单独设立的实验课考核按百分制评分,考核内容应包括基本理论、实验原理和实验。3.实验考核内容包括:1)实验预习;2)实验过程(包括实验操作、实验记录和实验态度、表现);3)实验报告;权重分别为、、;原则上根据上述三个方面进行综合评定。学生未取得1)和2)项成绩时,第3)项成绩无效。 4.实验指导教师应严格按照考核内容分项给出评定成绩,并及时批改实验报告,给出综合成绩,反馈实验中出现的问题。实验成绩在教师手册中有记载。 实验报告主要内容 一.实验目的 二.实验仪器及设备 三.实验原理 四.实验步骤 五.实验记录及原始记录 六.数据处理及结论 七.实验体会(可选项) 注:1. 为了节省纸张,保护环境,便于保管实验报告,统一采用A4纸,实验报告建议双面打印(正文采用宋体五号字)或手写,右侧装订。 2. 实验类别指验证、演示、综合、设计、创新(研究)、操作六种类型实验。 3. 验证性实验:是指为了使学生巩固课程基本理论知识而开设的强调演示和证明,注重实验结果(事 实、概念或理论)的实验。 4. 综合性实验:是指实验内容涉及本课程的综合知识或本课程相关的课程知识的实验。 5. 设计性实验:是指给定实验目的、要求和实验条件,由学生自行设计实验方案并加以实现的实验。

一、实验目的 1.进一步加深对类和对象的理解。 2.掌握类的构造函数和析构函数的概念、意义和使用方法。 3.掌握重载构造函数的含义和使用。 4.编写一个较为复杂的类和对象的应用程序。 二、实验内容 1.设计一个程序,定义一个矩形类,包括数据成员和函数成员。要求有构造函数、析构函数,还有一个成员函数area( )用来计算并显示矩形的面积,并编写main函数进行测试。程序:# include<> # include<> class Rect { public: Rect(int l, int w); ~Rect(); int Area(); private: int nLength; int nWidth; }; Rect::Rect(int l, int w) {cout<<"executing constructor..."<