第10章 综合应用程序设计
Visual-LISP程序设计(第2版)第13章综合应用实例

13.1.3 定义AutoLISP程序源文件
1. 函数说明
(1) screw:绘制螺钉主函数,定义名字为screw的AutoCAD命令。
(2)initdlg1:初始化主对话框函数。
(3)initdlg2:初始化子对话框函数,螺钉种类s_t是该函数的参数。
(4)f_img:初始化图像函数,将幻灯片显示到图像上。图像的关键字 key和包括路径的幻灯片文件名是该函数的参数。
螺钉的定位点和旋转角既可以在相 应的编辑框输入数值,也可以单击 “光标拾取<”按钮,用鼠标在屏幕上 确定。
(5)确定绘制螺钉的其他参数
因为螺钉的中心线可能与部件图上已 有的中心线重合,所以提供了“绘制中 心线”切换开关。当该开关处于打开状 态时绘制中心线。
对话框右下角的三个颜色块是确定三 种线型颜色的图像按钮,单击之后弹出 AutoCAD标准颜色对话框,选择一种颜 色之后,相应的图像按钮的颜色随之改 变 。 图 像 按 钮 的 含 义 , 在 其 左 侧 用 text (文本)控件辅助说明。
2. 使用说明
(1)安装和加载 从电子教案中找出上述文件并复制到指定的路径,加载13-1.lsp。
(2)调用绘制螺钉的命令 种类确定螺钉的种类 在“command:”提示下,输入screw命令,弹出图13-1所示确定螺钉种类
对话框。
图13-1确定螺钉种类对话框
(3)确定螺钉的种类 图13-1所示对话框提供了互动的图像按钮和螺钉种类的列表,通过该对话框
选择一种螺钉,单击“继续”按钮,弹出图13-2所示确定螺钉参数的对话框。
图13-2确定螺钉参数对话框
(4)确定螺钉的几何参数
通过“螺钉大径d”的列表选择螺钉 的大径d。
第10章 配置应用程序及其他应用

10.2.2 Global.asax文件示例
这是一个网站日志示例,在系统启动、系统
关闭、客户登录或退出时在文本文件log.txt中 记录有关信息。 两个文件
Global.asax 用来记录日志 10-2.aspx
用来将日志信息显示在页面上
Global.asax文件
Global.aspx
程序执行的结果不是我们所预期的,称为逻辑错误。
这可能是因为程序设计师的观点本身就不正确,所 以这种错误并不好发现。因为程序的语法内容并没 有错,要解决这类问题必须配合一些工具和方法, 才能找出错误的地方。 通过在程序代码中加入排除错误用的程序代码来排 错是最直接的方法。以逻辑错误来说,因为程序本 身并没有任何语法错误存在,大多是变量的内容或 程序执行流程上出了问题,因此将程序执行过程的 变量值显示出来就可以帮助我们了解变量的变化, 进而找出程序的问题出在哪里。 在Visual 2003中可加入断点来动态观 察在程序运行过程中变量的值,这一种最快速的排 除逻辑错误的方法。
第3步:添加用户
依次选择【开始】
→【程序】→【管 理工具】→【计算 机管理】菜单命令 打开对话框。 如图选择“用户”, 并在右边用户列表 框中的右键菜单中 选择【新用户】命 令,即可为每一个 客户添加用户名和 密码
10.4.2 基于表单的认证
什么是基于表单的认证?
步骤:
第1步:在web.Config中设置:
本章要点
配置Global.asa文件
配置web.Config文件,尤其是读取其中自定
义的属性。 如何保证应用程序的安全 如何调试程序
10.1 关于配置应用程序
什么是应用程序?
配置应用程序的重要内容:
计算机,科学,导论第10章人工智能系统

计算机科学导论
16
10.5 智能计算
10.5.2 遗传算法 遗传算法(Genetic Algorithm,简称GA)是利
用达尔文的“适者生存,优胜劣汰”的自然进化规 则进行搜索和完成对问题求解的一种新方法。
计算机科学导论
17
10.5 智能计算
10.5.3 群集智能
1. 蚁群优化算法
蚁群(ant colony )算法是最近几年才提出的一种 新型模拟算法进化算法,它是20世纪90年代首先由 意大利学者M. Dorigo等人提出,称之为蚁群系统,
计算机科学导论
5
10.1 人工智能系统概述
10.1.4 人工智能的研究与应用领域
1. 问题求解 2. 专家系统 3. 决策支持系统 4. 自然语言处理 5. 组合高度和指挥 6. 智能机器人 7. 逻辑推理和定理证明 8. 模式识别 9. 自动程序设计 10. 智能控制
计算机科学导论
6
10.2 知识表示及推理
第十章 人工智能系统
计算机科学导论
1
本章要点:
◆人工智能系统概述 ◆知识表示及推理 ◆搜索技术 ◆自然语言处理 ◆智能计算 ◆机器学习
计算机科学导论
2
10.1 人工智能系统概述
10.1.1 什么是人工智能 人工智能AI(Artificial Intelligence),又称为
机器智能MI(Machine Intelligence),是研究、设计和 应用智能机器或智能系统,用来模拟人类智能活动的能 力,以延伸人类智能的科学。它是一门综合了计算机科 学、控制论、信息论、生理学、神经生理学、语言学、 哲学的交叉学科。
计算机科学导论
14
10.4 自然语言处理
第十章 算法与程序设计初步

程图、伪代码和计算机语言等。
18
10.3.5 算法的分类
1.数值计算算法 这种算法的主要目的是用于科学计算,其特点是 输入、输出相对较简单,运算相对较复杂。比如 求高次方程的近似根、函数的定积分等。
2.非数值计算算法 这种算法的主要目的是对数据进行管理,其特点 跟数值计算算法刚好相反,输入、输出相对较复 杂,算术运算相对较简单,而逻辑运算较复杂。 比如对数据的排序、查找等算法。
4
10.1 引言
实例演示
5
实例演示(续)
实例演示(续)
10.2 程序设计语言和程序设计
10.2.1 程序的概念 10.2.2 程序设计语言的概念
10.2.3 程序设计
8
10.2.1 程序的概念
程序主要是用于描述完成某项功能所涉及的对象和动 作规则。是根据功能和性能要求,用程序设计语言描述的 、适合计算机处理的指令序列。 一个程序应包括以下两方面内容: • 数据的描述。 • 操作基本语句和控
制结构等基本内容的介绍和使用。
3
10.1 10.2 10.3 10.4 10.5 10.6 10.7
引言 程序设计语言和程序设计 算法与算法设计的基本方法 面向对象程序设计中的基本概念 Visual Basic程序设计的基本步骤 窗体和基本常用控件 Visual Basic编程基础
19
10.3.6 几种常用的算法设计的基本方法
迭代结构
递归结构
排序算法
查找算法
20
10.4 面向对象程序设计中的基本概念
10.4.1 程序设计的方法
VB面向对象程序设计方法与传统程序设计的主要区别: 事件驱动的编程机制 交互式的开发模式
10.4.2 对象和类的概念
《单片机应用系统设计》教学大纲及知识点

《单片机应用系统设计》课程教学大纲一、本课程的地位、作用和任务本课程是在学生学完电子技术类基础课程和微机应用类基础课程之后,为加强对学生技术应用能力的培养而开设的体现电子技术、计算机技术综合应用的综合性课程。
本课程的任务是使学生获得单片机应用系统设计的基本理论、基本知识与基本技能,掌握单片机应用系统各主要环节的设计、调试方法,并了解单片机在测量、控制等电子技术应用领域的应用。
初步具备应用单片机进行设备技术改造、产品开发的能力。
二、理论教学内容绪论单片机概述0.1 引言0.2 单片机的特点0.3 单片机的发展0.4 MCS-51单片机系列简介第一章MCS–51单片机的结构和原理1. 1 单片机的内部结构1. 2 MCS–51的外部引脚及功能1. 3 MCS–51的存储器配置1. 4 并行输入/输出接口电路1. 5 时钟电路与时序1. 6 MCS –51最小系统设计第二章MCS-51的指令系统2.1 MCS-51指令系统概述2.2 数据传送类指令2.3 算术运算类指令2.4逻辑运算及移位类指令2.5 控制转移类指令2.6 布尔变量操作类指令第三章汇编语言程序设计3.1 汇编语言源程序的格式3.2 伪指令3.3 汇编语言程序举例第四章MCS—51的中断与定时4.1 MCS—51单片机的中断系统4.2 MCS–51的定时/计数器第五章存储器扩展技术5.1 概述5.2 程序存储器的扩展5.3 数据存储器的扩展5.4 PROME2及其扩展第六章I/O扩展技术6.1 I/O接口概述6.2 MCS-51并行I/O口的直接使用6.3 简单I/O扩展6.4 8255并行I/O口6.5 8155简介第七章键盘/显示器扩展技术7.1 单片机应用系统中的人机通道7.2 键盘及其接口7. 3 显示器及接口7.4 专用的8279键盘/显示器接口第八章模拟量输入/输出通道8.1 模拟量输入通道8.2 模拟量输出通道第九章MCS-51的串行通信9.1 串行通信基础9.2 串行接口的构成与工作方式9.3 串行口的典型应用9.4 单片机的多机通信9.5 RS-232C串行总线第十章应用程序设计技术10.1 智能仪表的一般结构10.2 单片机应用系统设计举例第十一章高性能单片机PIC16F8XX介绍11.1 PIC16F87X的特点11.2 PIC16F87X的结构与配置11.3 PIC16F87X的功能部件11.4 PIC16F87X的应用举例三、实践教学的内容和要求实验一联机仿真操作练习实验目的:进一步掌握开发工具的应用实验内容:学习PC机与开发机联机仿真的操作方法实验二指令系统和编程练习实验目的:掌握8051单片机常用指令的使用和编程实验内容:用8051单片机的常见指令编写简单的多字节加减法程序。
第10章 多重窗体程序设计真题汇总

第10章多重窗体程序设计历年真题16)以下叙述中正确的是A)窗体及窗体上所有控件的事件过程代码都保存在窗体文件中B)在工程中只有启动窗体可以建立菜单C)窗体名称必须与窗体文件的名称相同D)程序一定是从某个窗体开始执行的答案:A 【解析】窗体文件中含有控件和程序代码,其扩展名为.frm,窗体的名称也就是窗体的Name属性,该属性可以改变,不一定和窗体文件同名;每个窗体都能设置菜单,而程序可以由启动窗体开始执行,也可以由Sub Main()过程开始执行。
24)以下关于多窗体的叙述中,正确的是A)任何时刻,只有一个当前窗体 B)向一个工程添加多个窗体,存盘后生成一个窗体文件C)打开一个窗体时,其他窗体自动关闭D)只有第一个建立的窗体才是启动窗体答案:A 【解析】VB支持多窗体程序设计,在任何一个时刻,只能有一个窗体成为当前窗体;如果一个工程含有多个窗体,则这些窗体会分别保存;这些窗体可以同时打开或者关闭,而且在工程属性中可以指定任意一个窗体为启动窗体。
34)以下描述中错误的是()。
A)在多窗体应用程序中,可以有多个当前窗体B)多窗体应用程序的启动窗体可以在设计时设定C)多窗体应用程序中每个窗体作为一个磁盘文件保存D)多窗体应用程序可以编译生成一个EXE 文件答案:A2010年3月(19):下面关于标准模块的叙述正确的是()A标准模块中声明全局变量B标准模块中科院包含一个Sub Main过程,但此过程不能被设置为启动过程C标准模块中可以包含一些Public过程D一个工程可以包含多个标准模块答案:B2009年9月(13)下面有关标准模块的叙述中,错误的是()。
A)标准模块不完全由代码组成,还可以有窗体B)标准模块中的Private 过程不能被工程中的其他模块调用C)标准模块的文件扩展名为.basD)标准模块中的全局变量可以被工程中的任何模块引用答案:A。
第10章:网络与数据库编程

10.1.1 IP地址和InetAddress类
Java语言可编写低层的网络应用。例如,
传输文件, 建立邮件控制器, 处理网络数据。
Java语言支持的Internet协议有ftp、telnet、www 等,支持网络通信的软件都在包中, 例如:
.ftp, .www等。
10.1.1 IP地址和InetAddress类
IP地址用于指明因特网上的一台计算机在网络中的地址,用 32 位二进制代 码表示一个网络地址。
IP地址用点分十进制表示。
地址分A、B、C、D、E五类,常用的是A、B、C三类:
A(1.0.0.0-126.255.255.255),0, 7位网络号,后24位为主机号。 B(128.0.0.0-191.255.255.255),10, 14位网络号, 后16位为主机号 C (192.0.0.0-223.255.255.255), 110, 21位网络号, 后8位为主机号 D (224.0.0.0-239.255.255.255), 1110, 28位多点广播组标号. E (240.0.0.0-254.255.255.255), 1111, 保留试验使用。
然后,就可以用流的方法访问网上资源。
网上资源使用结束后,数据流也应及时关闭。用close() 关闭建立的流。
URL url = new URL(urlName);//由网址创建URL对象
URLConnection tc = url.openConnectin();//获得URLConnection对象
Java语言的优势之一是Java程序能访问网络资源
1. TCP/IP协议和IP地址
为了进行网络通信,通信双方必须遵守通信协议。目前 最广泛使用的是TCP/IP协议族
《C语言程序设计》教学大纲及复习重点

《C语言程序设计》教学大纲及复习重点课程名称:C语言程序设计适用专业:2016级计算机应用技术(专科)2016级计算机科学与技术(专升本函授)、计算机应用技术(专科函授)辅导教材:《C语言程序设计》钟志水周鸣争主编电子科技大学出版一、本课程的地位、任务和作用本课程是计算机科学与技术、计算机应用技术等各专业的系定必修课,通过本课程的学习可以使学生掌握结构化程序设计的方法,确立程序设计的思维方式,培养和提高学生的应用程序开发能力,并为计算机软件技术基础、数据结构、软件工程、C++、嵌入式系统及应用、计算机网络等后续课程的学习打下基础。
二、本课程的相关课程本课程的先修课程为大学计算机基础。
通过对大学计算机基础的学习,可以使学生理解计算机工作的基本原理和计算机语言的一些基本概念,有助于编程思想的培养;另一方面为学生上机实践提供相应支持。
三、本课程的基本内容第1章C语言概述C语言的发展过程及特点;C语言程序的基本结构;算法及其描述;C语言字符集、标识符与关键字;C程序的上机步骤。
第2章数据类型与运算C的数据类型;常量与变量;整型数据;实型数据;字符型数据;运算符和表达式;不同类型数据间的混合运算。
第3章顺序结构程序设计C语言的基本语句;数据输入与输出;顺序结构程序设计举例。
第4章选择结构程序设计关系运算;逻辑运算;if语句;switch 语句;选择结构程序举例第5章循环结构程序设计while 语句;do-while语句;for语句;转移语句;循环的嵌套;循环结构程序举例及综合三种结构编程。
第6章数组一维数组的定义、引用、初始化;一维数组程序举例;二维数组的定义、引用、初始化;二维数组程序举例;字符数组的定义、引用、初始化;字符串处理函数;字符数组应用举例;常见算法讲解。
第7章函数与编译预处理函数的定义;函数调用的形式与方式;函数的嵌套与递归调用;变量的作用域;变量的存储方式;内部函数和外部函数;编译预处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统总体设计
开 始 输入year、month、day 输入合法吗?
是否为闰年
显示当月第 1天是星期几 显示当日日期 结 图 10-2
6
束
万年历设计流程图
10.1.3
3、功能模块设计
系统总体设计
⑴ 功能控制模块:用来实现日期合法性检查、闰年判断和 星期计算。 ⑵ 打印输出模块:用来实现输出显示和打印指定个数的空 格、打印分隔线、打印用户使用手册、打印当前日期你对应的 星期以及打印给定的星期。 ⑶ 日历显示模块:用来实现日历生成和显示。 ⑷ 键值获取模块:主要用于对键盘操作的响应,由函数 void getKey Value()获取按键值,根据键值调整当前日期,并调 用日历显示模块中的showCalendar()函数来实现日历生成和输 出,其实现过程如图10-4所示。
图10-7 游戏方块预览
17
10.2.3
系统总体设计
⑶ 显示更新模块:清除游戏方块的过程是先画轮廓再填 充的方式,使用背景色填充小方块,然后使用前景色画一个 游戏底板中的小方块。
⑷ 分数更新模块:当判断出一行满时,score变量加一固 定值(如10),可以把等级level看作是速度speed 4、数据结构设计 ⑴ 游戏底板BOARD结构体 ⑵ 游戏方块SHAPE结构体 ⑶ SHAPE结构数组
系统总体设计
根据以上需求分析,系统应有游戏方块预览功能、控制 功能、显示更新功能、速度更新功能、帮助功能等,其模块 结构如图10-5所示:
俄罗斯方块游戏
方 块 预 览 模 块
方 块 控 制 模 块
显 示 更 新 模 块
分 数 更 新 模 块
帮 助 功 能 模 块
图 10-5 俄罗斯方块游戏功能描述图
3
10.1.2
1、基本需求
系统需求分析
电子万年历用来提供查询,主要实现以下三个查询功能: 功能1:要求从键盘输入年份,输出该年12个月的日历。 功能2:要求从键盘输入年份和月份,输出该月的日历。
功能3:要求从键盘输入年、月、日, 输出该日是星期几。 2、功能要求
⑴ 日历显示功能:自动显示系统日期所在月份的月历,
7
10.1.3
4. 数据结构设计
系统总体设计
本程序没有自定义结构体,仅定义了全局变量。 ⑴ struct date sysTime:系统结构体,用于存储系统 日期。该结构体有3个成员,分别是da_year、da_mon和 da_day,分别表示年、月和日。 ⑵ int currentYear:表示当前的年份。
12
10.2.2
1、基本需求
系统需求分析
游戏本身是一种娱乐,因此,必须使游戏者在游戏过程 中感到有趣。与此同时,通过这种“娱乐”,应能对游戏者 在智能、创造性等方面具有一定的启迪、激发、引导作用。 2、功能要求 要使游戏者感到该游戏格外有趣,在游戏操作过程中, 游戏系统应具有以下功能和特点: ⑴ 游戏操作引导:在游戏过程中,在当前游戏画面中, 出现下一个游戏方块,这样有利于游戏者控制游戏的策略。 ⑵ 方便任意操作:能实现对游戏方块的左、右、下、 上的快速移动、下落和旋转。
9
10.1.4
系统功能实现
⑵ 闰年判断:判断year为闰年还是平年,为后续程序设 计作判断。仿照算法设计中的公式,写出闰年判断函数 leapyear()。 ⑶ 计算是星期几:根据dayNum()函数返回的结果,计 算month中的星期值。 ⑷ 计算是第几天:根据输入的month值,计算month第 一天在该年中是第多少天。 3. 程序编码的基本原则 ⑴ 易修改:为了便于日后修改,每个函数应在入口处 加入较详细的注释。 ⑵ 易记忆:给变量命名时,名字中尽可能多地包含必 要的信息。
并能突出显示当期日期。
⑵ 日期查询功能:显示查询日期、月份、是否为闰年。 ⑶ 支持键盘操作:通过键盘调整年份、月份和日期。
⑷ 参数排错功能:能对输入的日期进行合法性检查。
4
10.1.3
1、系统结构设计
系统总体设计
根据以上需求分析,系统应有功能控制、打印输出、日历 显示和键值获取等4个功能模块,系统结构如图10-1所示。
2、功能要求
一个功能比较完善、具有实用价值的图书借阅管理系统, 从业务流程来讲,要求能实现用户的注册、注销、查找、浏 览、借书、还书,图书的注册、注销、查找、浏览、外借和 归还等。因此,应具有以下6项基本功能。 ⑴ 用户登录:系统用户分为管理员和学生。
21
10.3.2
系统需求分析
⑵ 图书信息管理:包括;书号、书名、作者、图书分 类、出版社、出版时间、单价、总量和库存量。 ⑶ 学生信息管理。包括:输入学生信息、保存学生信 息、修改学生信息、添加学生信息、删除和输出学生信息。 ⑷ 图书查询功能:图书查询分为:按书名查询、按作 者查询、按图书分类查询、按出版社查询和按出版时间查询。 ⑸ 借书功能:借书时,先判断学生是否有空闲的借书 卡,若有空闲的借书卡,则要求学生输入所借图书的书号。 ⑹ 还书功能:还书时,先检查学生的借书卡,然后要 求学生输入所还图书的书号,将对应借书卡上的记录清零, 并修改该书的库存量。
15
10.2.3
系统总体设计
⑴ 方块预览模块:在游戏过程中,当在游戏底板中出现 一个游戏方块时,必须在游戏方块预览区域中出现下一个游戏 方块,这样有利于游戏玩家控制游戏的策略。 ⑵ 方块控制模块:通过各种条件的判断,实现对游戏方 块的左移、右移、快速下移、自由下落、旋转功能以及行满 消除行的功能。 ⑶ 显示更新模块:当游戏方块左右移动、下落、旋转时, 要清除先前的游戏方块,用新坐标重绘游戏方块。当消除满行 时,要重绘游戏底板的当前状态。 ⑷ 速度更新模块:在游戏者进行游戏过程中,需要按照 一定的游戏规则给游戏者计算游戏分数。 ⑸ 帮助功能模块:游戏者进入游戏后,将有对本游戏如 何操作的温馨提示。
19
§10.3 图书借阅管理系统
10.3.1 系统设计目标
1、系统设计的教学目标 设计一个图书借阅管理系统,需要使用函数、数组、指针、 结构体、链表和文件等,基本上涵盖了C语言程序设计的所有 基础阶段的知识。 2、系统开发的知识要点
① 函数的定义与调用;
② 指针变量做为函数参数; ③ 结构体数组的应用;
10
10.1.4
系统功能实现
⑶ 易阅读:当结构嵌套时,内层结构采用缩进形式, 以明确结构的界限。 ⑷ 易理解:尽量采用容易理解的表达式。 ⑸ 易排错:编码最基本的要求是语法和逻辑的正确。 4、调试程序 ⑴ 异常处理:通过输入错误数据格式验证工程代码对 异常输入的处理能力。 ⑶ 平年2月验证:输入2011-2能验证千年2月的打印输出。 ⑷ 闰年其它月份验证:输入闰年的其它月份如2012-11 可以验证输出结果。 ⑸ 平年其它月份验证:输入平年其它月份如2011-11可 以验证输出结果。
④ 字符串函数的应用;
⑤ 文件的打开、关闭及读/写操作等。
20
10.3.2
1、基本需求
系统需求分析
图书借阅管理系统中的实体主要有图书和用户。对一般 用户来说,主要功能有查找图书、浏览图书、借书、还书等; 对管理员来说,除了一般用户的权限外,还具备有管理功能, 即注册图书、注册用户、注销图书、注销用户等维护管理功 能。
1、函数功能描述
在进行本项目的程序设计时,建议按教材358页表10-1定义 模块中的函数,然后进行调试。
2、模快化编程
根据模块结构,按模块进行编程,并在每个程序代码前 写上模块显示结构。
⑴ 参数输入与验证:对输入参数作验证,若输入参数 不合法,则重新输入,允许输入3次,若3次均不正确,则结 束程序 。
11
§10.2 俄罗斯方块游戏
10.2.1 系统设计目标
1、系统设计的教学目标 本项目旨在训练学生的基本编程能力和游戏开发技巧, 熟悉C语言图形模式下的编程。本项目中涉及C语言的结构 体、数组、时钟中断及绘图等方面的知识。 2、系统开发的知识要点 这里介绍开发俄罗斯方块游戏的实现方法,用C语言编 程实现俄罗斯方块游戏涉及的主要知识点有以下几个方面: 结构体、数组、时钟中断及绘图等方面的知识。 ① 应用结构体类型编程; ② 应用数组编程; ③ 时钟中断系统的应用方法; ④ C语言的绘图知识等;
16
10.2.3
系统总体设计
2. 主控函数main( ) 主控函数main( )实现对整个程序的运行控流程制以及相关 功能模块的调用。 3. 功能模块设计 整个游戏的操作是通过以下5个功能模块来实现的。 ⑴ 方块预览模块:游戏方块将在如图10-7所示的4×4的 正方形小方块中预览。 ⑵ 方块控制模块:这是该游戏开发的重点和难点部分。 ① 左移的实现过程。 □□□□ ② 右移的实现过程 □■□□ □■□□ ③ 下的实现过程 □■■□ ④ 旋转的实现过程
18
10.2.4
1、函数功能描述
系统功能实现
在进行本项目的程序设计时,建议按教材367页表10-2 定义模块中的函数,然后进行调试。
2、模块化编程
俄罗斯方块程序按模块化编程,分为4个功能模块 。
⑴ 主函数main():实现对整个程序的运行控制。 ⑵ 时钟中断处理:速度越快,时间中断的间隔也就越短。 ⑶ 成绩、速度及帮助的显示:为了帮助游戏者操作,必 须提供帮助,为了鼓励游戏者,必须显示游戏成绩与速度。 ⑷ 满行处理:当游戏方块不能满足相关操作条件时,可 以调用以下函数来处理。
万年历系统
功 能 控 制 模 块
打 印 输 出 模 块
日 历 显 示 模 块
键 值 获 取 模 块
图 10-1 系统功能模块
5
10.1.3
2、主控函数main() 本系统的结构由4个模 块所组成,由主函数main() 实行控制,按照系统工作 顺序,其工作流程如图10 -2所示。 主控函数主要对输入 参数进行检查,以保证输 入参数正确,不会对后续 程序造成影响;其次,对 输入的年份和月份进行处 理和计算,判断输入年份 是否为闰年。