程序设计教程Visualc++.doc

上传人:wux****ua 文档编号:9530321 上传时间:2020-04-06 格式:DOC 页数:103 大小:4.79MB
返回 下载 相关 举报
程序设计教程Visualc++.doc_第1页
第1页 / 共103页
程序设计教程Visualc++.doc_第2页
第2页 / 共103页
程序设计教程Visualc++.doc_第3页
第3页 / 共103页
点击查看更多>>
资源描述
第1章 程序设计基础知识1.1 程序设计的概念1. 计算机的基本工作方式2. 大脑解题的基本方式图1-1 人解题的基本方式3. 程序的例子1.2 程序设计语言1.2.1 程序设计语言的种类1. 机器语言2. 汇编语言3. 高级语言1.2.2 高级语言1. 高级语言的种类2. 高级语言的基本特点3. 高级语言的执行图1-2 高级语言的编译方式图1-3 高级语言的解释执行方式4. 程序设计语言现状1.2.3 C+语言的背景和特点1.3 C+程序的基本结构1.3.1 C+程序实例图1-4 四面体1.3.2 注释1.3.3 编译预处理1.3.4 函数1.3.5 数据的输入输出1.4 Visual C+.NET开发环境及应用程序图1-5 Visual C+.NET窗口1. 标题栏2. 菜单栏图1-6 “选项”对话框图1-7 “新建项目”对话框3. 工具栏图1-8 代码编辑器窗口5. 类视图窗口图1-9 “类视图”窗口6. 解决方案资源管理器图1-10 “解决方案资源管理器”窗口1.5 C+程序设计实例1.5.1 控制台应用程序实例1. 创建应用程序图1-11 “新建项目”对话框图1-12 应用程序向导图1-13 控制台程序的代码编辑器2. 键入和编辑C+源程序图1-14 保存了一个项目的文件夹中的内容4. 编译和运行C+源程序图1-15 控制台应用程序编译通过后显示的信息图1-16 控制台应用程序的运行窗口1.5.2 图形用户界面应用程序实例图1-17 要编写的程序的用户界面1. 创建应用程序图1-18 向导中选择应用程序类型的页面图1-19 向导中设置用户界面特征的页面图1-20 向导中查看所生成的类的页面图1-21 创建了单文档界面应用程序后的Visual C+.NET窗口2. 在应用程序框架中添加代码3. 编译并运行应用程序1.6 程序设计的一般步骤1. 分析问题、进行概要设计2. 制定具体的操作步骤3. 编写程序代码及其文档4. 测试程序5. 验证程序习 题 1第2章 算法与程序设计2.1 算法的概念1. mn时的验证2. m=n时的验证2.2 算法的特性1. 有穷性2. 确定性3. 数据输入4. 信息输出5. 可行性2.3 算法的流程图表示1. 自然语言表示2. 伪代码表示3. 流程图表示图2-1 流程图的功能框图2-2 计算速度和距离的算法图2-3 计算应付款额的算法流程图图2-4 求最大数流程图2.4 算法的结构2.4.1 算法的三种基本结构1. 顺序结构2. 选择结构图2-5 顺序结构图2-6 双分支选择结构图2-7 单分支选择结构3. 循环结构图2-8 当型循环结构图2-9 直到型循环结构图2-10 求分段函数的算法流程图图2-11 累加器2.4.2 基本结构的本质属性图2-12 非结构化算法流程图图2-13 非结构化算法及相应的结构化算法流程图2.4.3 N-S结构化流程图图2-14 顺序结构图2-15 选择结构图2-16 当型循环结构图2-17 直到型循环结构图2-18 挑选最大数的算法图2-19 求一元二次方程根的算法2.5.1 顺序结构的C+程序1. 算法设计图2-20 鸡兔同笼算法2. C+程序设计3. 程序的运行图2-21 解鸡兔同笼问题的程序的运行过程2.5.2 选择结构的C+程序图2-22 求三个数中最大值的算法2.5.3 循环结构的C+程序图2-23 求机器的算法2.5.4 循环结构和选择结构的嵌套图2-24 另一个鸡兔同笼问题的算法2.6 算法与数据结构2.6.1 数据类型的意义2.6.2 数据结构的概念图2-25 线性链表(线性表的链式存储结构)图2-26 树2. 数据的物理结构图2-27 结点的顺序存储图2-28 结点的链式存储3. 数据结构上所施加的运算2.6.3 数据结构与算法2.7 结构化程序设计2.7.1 结构化程序图2-29 一团乱麻似的程序2.7.2 结构化程序设计方法图2-30 第一级算法图2-31 S1的细化(部分)图2-32 S2的细化图2-33 S3的细化图2-34 S2.2.2.1的细化图2-35 求矩阵乘积的流程图习 题 2第3章 基本数据类型与表达式3.1 标识符和名字3.1.1 C+字符集3.1.2 标识符3.1.3 名字3.2 数据类型的概念3.2.1 C+中的数据类型3.2.2 基本类型的计算机表示1. 字符的存储2. 整数的存储图3-1 C+的数据类型图3-2 整数109的不同存储格式3. 整数的表示范围4. 实数的存储图3-3 浮点数的存储格式3.3 基本数据类型1. 整数2. 浮点数3. 字符4. 字符串图3-4 字符串存储的例子3.3.2 基本类型变量的声明和引用1. 变量的声明2. C+中的类型声明符3.3.3 无符号数和const常量1. 有符号数和无符号数2. const常量3.3.4 用typedef定义类型3.4 算术表达式3.4.1 基本算术表达式1. 数据类型的隐式转换规则2. 强制类型转换3.4.3 自增和自减运算符3.5.1 关系表达式图3-5 一个逻辑表达式的运算顺序图3-6 圆塔示意3.6 C+中的特殊表达式3.6.1 赋值表达式1. 赋值表达式2. 复合赋值运算符3.6.2 条件表达式3.6.3 逗号表达式3.6.4 位运算表达式1. 按位与(&)2. 按位或(|)3. 按位异或()4. 按位取反()5. 左移位运算符()3.7 运算符的优先顺序3.8 C+中的数据输入输出图3-7 输入输出操作示意3.8.1 输入流cin3.8.2 输出流cout1. 使用控制符2. 使用流对象的成员函数3.8.3 输入输出函数printf()和scanf()1. printf()函数2. scanf()函数习 题 3第4章 C+程序结构4.1 C+语言中的语句1. 流程控制语句2. 函数调用语句3. 表达式语句4. 空语句4.2 选 择 结 构4.2.1 if语句的使用4.2.2 if语句的嵌套4.2.3 switch语句的使用图4-1 switch语句的执行4.3 循 环 结 构4.3.1 while语句4.3.2 dowhile语句图4-2 圆内接正六边形图4-3 求值程序的运行结果4.3.3 for语句1. for语句的功能图4-4 for语句的执行2. for语句中表达式的缺省3. for语句中表达式的种类图4-5 两个循环语句的执行过程图4-6 矩形与椭圆4.4 非正常流程控制4.4.1 goto语句和语句标号4.4.2 break语句和continue语句1. break语句2. continue语句4.4.3 exit函数和abort函数4.5 函数的定义和调用4.5.1 函数的定义1. 函数类型及函数值2. 形式参数的声明4.5.2 函数的调用4.5.3 函数的声明4.5.4 内联函数4.6 函数的参数4.6.1 参数的值传递方式4.6.2 变量的引用类型与函数参数4.6.3 带有默认参数的函数4.7 函数的嵌套调用和递归4.7.1 函数的嵌套调用图4-7 函数嵌套调用示意图4-8 弦截法示意4.7.2 函数的递归图4-9 Honoi塔问题4.8 变量的作用域和生存期4.8.1 局部变量和全局变量1. 局部变量2. 全局变量3. 局部变量和全局变量重名问题1. 自动变量2. 静态变量3. 寄存器变量4. 外部变量4.9 程序的多文件组织1. 内部函数3. 多文件程序中的全局变量声明4. 多文件组织的编译和连接4.10 编译预处理4.10.1 #define宏定义指令1. 无参宏定义2. 带参数的宏4.10.2 #include文件包含命令图4-10 文件包含示意1. 文件包含命令的使用2. 头文件3. C+头文件的名称约定4.10.3 条件编译1. #if命令2. #ifdef命令3. #ifndef命令习 题 4第5章 用户自定义数据类型5.1 数 组5.1.1 一维数组图5-1 5个数的冒泡排序步骤5.1.2 二维数组1. 二维数组的存储图5-2 二维数组的结构及存储分配2. 二维数组初始化5.1.3 数组作为函数参数1. 数组元素作函数实参2. 数组名作函数参数5.2 结 构 体5.3 枚举型变量5.4 指 针5.4.1 地址与指针的概念5.4.2 指针的定义和使用1. 指针的定义2. 指针的初始化5.4.3 动态存储分配5.5 指针与数组5.5.1 一维数组和指针1. 访问数组元素2. 用数组名代替指针3. 数组名与指针的区别5.5.2 二维数组和指针5.5.3 指针的数组5.5.4 指向数组的指针5.6 字符串处理5.6.1 字符数组1. 字符数组的定义和使用2. 字符串3. 字符串处理函数5.6.2 字符指针图5-3 字符指针的位置5.6.3 字符串类型1. 字符串类型的输入输出2. 字符串类型的比较3. 字符串类型的其他运算4. 字符串操作函数5.7 指针与函数5.7.1 返回指针的函数5.7.2 指向函数的指针习 题 5第6章 面向对象程序设计6.1 面向对象程序设计的概念1 面向对象程序设计思想图6-1 传统程序的组成图6-2 程序中数据和操作分离图6-3 客观系统中的实体及其联系2 面向对象程序设计特征3 面向对象程序设计语言6.2 类 和 对 象6.2.1 类的定义6.2.2 类中成员函数的定义1 成员函数的定义方法2 内联成员函数6.2.3 对象6.2.4 构造函数与析构函数1 构造函数2 析构函数6.2.5 const对象与const成员函数6.2.6 对象与指针1 定义指向对象的指针2 this指针6.2.7 类的静态成员1 静态数据成员2 静态成员函数6.2.8 友元6.3 方 法 重 载6.3.1 函数重载6.3.2 运算符重载6.4 继 承6.4.1 基类和派生类图6-4 人的分类6.4.2 多重继承6.4.3 派生类的构造函数6.4.4 派生类的三种继承方式1 公用继承2 私有继承3 保护继承图6-5 类的继承关系6.4.5 继承与组合6.5 多态性及虚函数6.5.1 派生类对象替换基类对象6.5.2 虚函数6.5.3 纯虚函数和抽象类1 纯虚函数2 抽象类的使用6.6.1 函数模板6.7 C+的I/O流类和对象图6-6 I/O流类的层次结构6.8 异 常 处 理图6-7 终止程序时弹出的对话框6.9 命 名 空 间6.9.1 命名空间的使用6.9.2 标准命名空间std习 题 6第7章 用户界面设计7.1 建立Visual C+.NET工程7.1.1 Visual C+ .NET工程种类1 .NET项目类型2 ATL项目类型图7-1 新建项目对话框3 MFC项目类型4 Win32项目类型5 “常规”项目类型7.1.2 基于MFC的应用程序类型图7-2 MFC应用程序向导对话框1 单文档应用程序图7-3 单文档应用程序2 多文档应用程序3 基于对话框的应用程序图7-4 多文档应用程序图7-5 基于对话框的应用程序 7.2 基于MFC的应用程序概述7.2.1 文档/视图结构图7-6 单文档程序的类图7-7 单文档程序的文件图7-8 多文档程序的类图7-9 多文档程序的文件7.2.2 客户区重绘 图7-10 MSDN帮助系统图7-11 显示一个矩形图7-12 添加资源对话框7.2.3 资源的管理图7-13 资源视图窗口1 图像编辑器图7-14 图像编辑器2 菜单编辑器图7-15 菜单编辑器3 对话框编辑器图7-16 对话框编辑器7.3 各类消息处理方法1 Windows消息 2 控件通知 3 命令消息 7.3.1 菜单及工具栏命令图7-17 菜单项属性窗口图7-18 添加命令处理函数图7-19 可以改变背景的例程7.3.2 鼠标消息处理图7-20 添加消息处理函数7.3.3 键盘消息处理7.3.4 定时器消息处理图7-21 随机运动的矩形(状态1)图7-22 随机运动的矩形(状态2) 7.4 对 话 框7.4.1 对话框的创建1 创建对话框模板资源并添加控件2 创建对话框类图7-23 “MFC类向导”对话框3 在对话框类中添加某些控件的消息处理函数4 添加与控件关联的数据成员图7-24 对话框数据交换原理图7.4.2 对话框的调用1 有模式对话框的调用图7-25 颜色设置对话框图7-26 添加对话框变量向导对话框2 无模式对话框的调用图7-27 无模式对话框运行状态7.4.3 对话框中的控件图7-28 对话框控件的Tab键顺序图7-29 单击向下箭头图7-30 扩大下拉部分图7-31 利用多种对话框控件输入数据7.4.4 通用对话框1 颜色选择对话框2 字体选择对话框图7-32 颜色选择对话框图7-33 字体选择对话框7.4.5 基于对话框的应用图7-34 程序的对话框模板习 题 71 基于MFC的编程模式与基于.NET的编程模式差别何在?基于MFC的编程模式有几种主要类型?客户区重绘的意义何在?资源管理的内容包括哪些?2 建立一个单文档应用程序,每当在视图中右击,就以鼠标位置为中心绘制大小随机、颜色随机的正方形。正方形边长小于50像素。3 在第2题的基础上,添加菜单和工具栏按钮,利用菜单或工具栏按钮使所有正方形的边长扩大或缩小一倍。4 在单文档应用程序的客户区绘制一个正三角形。当按下左右方向键,该三角形就以三角形重心为轴按顺时针或逆时针方向旋转。5 利用定时器消息模拟一个红绿灯的变化过程。红绿灯用矩形色块模拟。6 在单文档应用程序中,按下鼠标左键在客户区创建以鼠标位置为中心的正方形,在每个正方形中右击,启动“颜色选择”对话框,可以设置该正方形的颜色。按下方向键可以控制所有矩形向上、下、左、右各方向移动。7 在单文档应用程序中,利用对话框输入三角形三个顶点坐标,计算并在视图中显示三角形的边长、面积。8 编写一个捕捉方块的游戏。一白色方块在屏幕中随机移动,用户用鼠标单击它一次则方块变红,再次点击则方块消失,游戏胜利结束。如果超过时限方块未消失则游戏以失败结束。要求实现以下功能:(1) 用菜单控制游戏开始或结束;(2) 用菜单可启动游戏设置对话框,可以设定游戏时限、方块每秒移动次数、每次移动最大步长; (3) 只有游戏开始前可以设置游戏运行参数,运行时不可设置;(4) 方块只能在客户区中移动,不能超出范围;(5) 正确显示游戏结果;(6) 尽量减少屏幕闪烁。9 在一个基于对话框的应用中,模拟手机拨号。要求实现以下功能:(1) 有开机、关机键、信息发送键、十个数字键、退格键、查询预存电话号码的功能键,以及向前、向后翻页键;(2) 用一个矩形窗口显示拨号数字或预存电话号码;(3) 预存电话号码最多20个,每个号码应有一行汉字说明;(4) 按下数字键可依次显示已拨数字,按下退格键可依次删除已拨数字的最后一位;(5) 按下查询预存号码功能键可以显示预存号码,按下向前、向后翻页键可浏览预存号码;(6) 按下开机、关机键可以切换其他所有键在可用与不可用的状态间转换;(7) 按下信息发送键后,首先判断号码位数正确与否。若正确则在显示框中显示“信息已成功发送”,否则显示“号码错”。第8章 图形图像与多媒体应用程序8.1 设备环境类图8-1 设备环境类及其子类8.1.1 CPaintDC类图8-2 在框架窗口中绘制一个椭圆图8-3 在对话框中绘制一个圆8.1.2 CClientDC类图8-4 鼠标移动轨迹图8.2 绘图工具类图8-5 各种绘图工具类8.2.1 画笔的使用8.2.2 画刷的使用图8-6 利用不同画笔绘制矩形图8-7 利用不同画刷填充客户区1 实心画刷2 阴影画刷3 位图画刷8.2.3 库存绘图对象8.2.4 字体的使用图8-8 利用不同字体显示信息8.3 坐标映射方式8.4 常用绘画模式图8-9 模拟时钟秒针转动8.5 数据显示与字符串8.6 几何图形绘制图8-10 圆饼、圆弧、直线和多边形绘制8.7 位图显示及图片框8.7.1 客户区位图显示 1 创建CBitmap工具对象,并获取位图相关信息2 在内存中创建一个特殊的CDC设备环境,并装载CBitmap对象3 利用函数BitBlt或StretchBlt将内存环境中的位图绘制到真实屏幕上图8-11 位图缩小一次的显示情况8.7.2 图片框控件图8-12 设置图片框属性图8-13 程序启动Splash画面8.8 多媒体应用8.8.1 声音文件播放图8-14 项目属性对话框8.8.2 网页浏览图8-15 利用浏览器ActiveX控件打开网页8.8.3 媒体播放图8-16 从ActiveX控件添加类向导图8-17 为ActiveX控件添加控制变量图8-18 利用媒体播放控件播放文件习 题 8第9章 数据文件与数据库应用程序9.1 数据管理方式的变迁1 人工管理阶段2 文件系统阶段3 数据库系统阶段9.2 数据文件的读写9.2.1 标准C+中的文件流类1 定义和打开文件流2 文件的读取和写入方法3 在文件中定位9.2.2 用MFC文件类读写文件1. 构造函数2. 读文件3 写文件图9-1 输入对话框模板图9-2 用记事本打开程序所保存的文件9.2.3 序列化方式读写文件图9-3 利用序列化机制读写数据文件9.3 数据库系统概念9.3.1 数据库系统构成1 数据库2 数据库管理系统图9-5 数据库管理系统构成图9-6 数据库管理系统指令执行图3 数据库应用程序图9-7 浏览器/服务器模式9.3.2 关系型数据库图9-8 读者表Reader图9-9 书目表Book图9-10 借阅关系表Borrow图9-11 表之间的关系图9.4 数据库操作语言SQL1. 查询记录2. 插入记录3. 更新记录9.5 数据库应用程序开发9.5.1 ODBC数据源图9-12 ODBC管理器对话框图9-13 Access数据源定义对话框9.5.2 通过向导建立应用程序图9-14 应用程序向导中的数据库支持选项图9-15 选择数据库对象图9-16 应用程序向导生成的程序框架 图9-17 数据库表Book的记录浏览、添加和删除9.5.3 利用MFC ODBC类编程1 CDatabase类2 CRecordset类图9-18 借书管理对话框图9-19 添加类对话框图9-20 添加ODBC使用者向导对话框9.5.4 利用列表控件显示记录图9-21 查询代号为8212103的读者的借书情况习 题 9
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!