程序设计基础 第 2 章 解题要有程序 主讲:吴献彩 Tel : 13242778225 QQ : 465214894.

Slides:



Advertisements
Similar presentations
江右弘道书院 弘 毅弘 毅. “ 启蒙运动 ” 何以重要?  “ 启蒙运动 ” 与中国转型 “ 中西古今 ” 四维中的启蒙.
Advertisements

渡黑水溝 郁永河. 2 戎克船:是明末清初時期往返兩岸的主要交通工具 ∗ 1. 關於台灣的開發歷史,我們到底了解多少呢?不妨試著說出 就我們所知有關台灣開發史的故事、小說、電影、音樂與大 家分享。 ∗ 2. 什麼是黑水溝?黑水溝為什麼會成為大陸移民渡海來臺時最 大的威脅? ∗ 3. 有聽過「六死三留一回頭」、「有唐山公,無唐山嬤」這兩.
一、模型与计算公式 二、基本的组合分析公式 三、概率直接计算的例子 第 1.3 节 古典概率 四、抽签与顺序无关 五、二项分布与超几何分布 六、概率的基本性质.
第2章第2章 第 1 节 生物与非生物. [ 猜谜语 ] 名字叫做牛, 不会拉犁头; 说我力气小, 背着房子走。 ( 打一动 物)
创作计算机程序 学习目标: 定义术语 “ 计算机程序 ” 说明编程过程中流程图和伪代码的用途 介绍程序在寻求解决方案的过程中可以利用的两种方 法 区别计算机编程的两个主要步骤 列举并描述面向对象编程的三个要素.
林園高中適性入學 高雄區免試入學 及 特色招生介紹 1. 國中學生 國中教育會考 1 ( 每年五月 ) 特色招生 術科考試 五專 免試入學 ( 每年六月 ) 特色招生 甄選入學 高中高職 免試入學 擇一報到 林園高中適性入學  入學管道流程 2.
第一部分 NCRE 简介 1 、全国计算机等级考试( NCRE )的含义 全国计算机等级考试 (National Computer Rank Examination ,简称 NCRE) 是经原国 家教育委员会 ( 现教育部 ) 批准,由教育部考 试中心主办,用于考查应试人员计算机应用 知识与能力的等级水平考试。
职业指导服务系统 欢迎了解职业指导服务系统!
计算机网络在农产品营销中的应用 江苏省铜山县农广校.
庄国洪 Tel: (O) 免疫与健康 庄国洪 Tel: (O)
中小学教育网课程推荐网络课程 小学:剑桥少儿英语 小学数学思维训练 初中:初一、初二、初三强化提高班 人大附中同步课程
軟體工程 -物件導向程式設計與UML系統分析實作
温 度 定义: 表示物体冷热程度的物理量。 国际单位:开尔文(K) 单位 常用单位:摄氏度(℃) 原理: 根据液体热胀冷缩的性质制成的。
C语言程序设计 李伟光.
企业培训师二、三级 《培训课程开发与教学实施》 主讲:王囤教授 班主任:任雨天老师 qq:
第四章 账户及复式记账的应用 教学目的与要求:本章内容属于会计实务部分。通过本章的教学,使学生掌握制造企业经济业务的核算内容及账务处理,进一步加深对复式记账原理的理解,熟练掌握借贷记账法在制造企业的实际应用。 教学重点:运用借贷记账法对制造企业的经济业务进行账务处理。 教学难点:利润的核算;期末各账户之间的相互结转。
私校會計規定與實務工作分享 辭修高級中學 會計主任 林秀滿 101年06月05日.
教學經驗分享 吳毅成 國立交通大學資訊工程系 2012年4月.
第一章 認識程式語言.
可爱的蜗牛 一、蜗牛冬眠 二、蜗牛进食 三、蜗牛排泄 四、蜗牛呼吸.
中日合资 武汉安珞计算机系统有限公司 公司介绍
杜芹 律师 婚姻律师专业化与业务拓展 主讲介绍 北京市盈科(深圳)律师事务所 高级合伙人,婚姻家事法律服务部主任;
营改增税负分析 之 税负分析测算表 青岛市国税局货物和劳务税处 二○一六年五月 1.
在线学习系统操作指南.
第三部分:模块“大纲”介绍 年开考模块 考务安排表 3.“大纲”概述 4.“大纲”的基本框架 5.各模块“大纲”介绍
求职信的写作方法 一、求职信的概念、写作目的和重要性 二、求职信的写作格式 三、如何提高求职信的含金量 四、写求职信的四个误区
用问题激发学生的思维 \.
提高自身素质做好 新时期班主任工作 北京市广渠门中学 高金英.
06学年度工作意见 2006年8月30日.
1.3.1 细胞膜——系统的边界 ●高中生物课件(人教课标版) 万晓军生物工作室(安义中学)
普通话模拟测试 与学习平台 使用指南.
應用學習科目 (apl) 香港中學文憑考試 負責老師: 王琼琼老師.
新事业单位会计准则 和事业单位会计制度讲解
四年级数学下册 + ÷ - 乘法运算定律 - × × - + ÷ 宫振艳 绿色圃中小学教育网
程式語言與設計 授課教師:蔣德威.
紧扣课程标准 关注社会热点 —苏教版教材新增内容复习建议 南京市南湖第一中学 马 峰.
第7章 软件过程和项目度量 过程和项目领域中的度量 软件测量 软件质量度量 在软件工程过程中集成度量 小型组织的度量 建立软件度量计划.
網路小說劇情建構與伏線營造 Windows98.
比爾蓋茲導讀.
民事诉讼法学 杨嬿宁 TEL: QQ:
新企业所得税 税收优惠表填报操作实务 江苏宿迁 吴健.
周 苏 教授 QQ: 系统集成与项目管理 周 苏 教授 QQ:
西安海天信息工程有限公司 3级系统集成资质认证答辩会演示稿
Visual Basic程序设计 主 编  柳青.
5.4 预测中的专家评估法 专家会议法 专家评估法 德尔菲法.
转正述职报告 乐恩公司 史航
第一次世界大战的时候,一位法国飞行员在2 000 m高空飞行的时候,发现脸旁有一个小玩意儿在游动着,飞行员以为这是一只小昆虫,敏捷地把它一把抓了过来,令他吃惊的是,他发现他抓到的竟是一颗德国子弹!     问题:大家都知道,子弹的飞行速度是相当快的,这名法国飞行员为什么会有这么大的本领呢?为什么飞行员能抓到子弹?
从双基到四基,从两能到四能 ——学习《义务教育数学课程标准(2011版)》
第一讲 面向对象程序设计概论 苏州大学 计算机科学与技术学院.
政治生活:   积极参与 重在实践.
第三章 磁 场 第 一 节 磁现象和磁场.
第八章 编码和测试 编码概述 编码语言与编码工具 编码示例 测试的基本概念 黑盒测试和白盒测试 测试用例设计 多模块程序的测试策略
林老師程式設計講座 第一單元 進入Visual Basic 世界.
计算机文化基础 第一章 计算机的基础知识.
组长:吴蔚 项目组成员:吴蔚,邱丁兰,汪琳莺
視窗程式設計簡介-VB、Visual Studio
程序语言的现在和未来 孙志岗.
规范教学,提升质量,迎接评估 ——学校教学管理制度解读
第1章 Visual Basic 简介 郭清溥.
电子电路课程设计 TEL:025-
程序基础 2019/4/25.
電子白板百萬小學堂 本活動建議搭配電子白板 學生最多可分成2~6組(請按組別按鈕) 老師可以視時間多少,來進行活動 每一組要回答十個問題。
程式語言 程式語言發展史 資料型態 程式指令 程序定義和使用.
導 論 教學投影片.
计算机应用基础 潍坊学院 计算机工程学院 主讲人:丁素英.
方格紙上畫正方形.
临床试验管理平台操作指南 (申办方用) 浙江省人民医院机构办.
臺北市國小數學科輔導團兼任輔導員 南湖國小 曾婉菁
程式設計與程式語言 告訴電腦做些什麼 第十六章.
Presentation transcript:

程序设计基础 第 2 章 解题要有程序 主讲:吴献彩 Tel : QQ :

课题引入 程序一: C=A ; A=B ; B=C ;  例:假设 A 的初值为 5 , B 的初值为 3 。 分别执行以下两个程序之后, A 、 B 的结果 值是多少? 比较:可读性、算法技巧、使用存储空间 程序二: A=A+B ; B=A-B ; A=A-B ;  → 变量、常量、表达式、算法

第二章 解题要有程序  计算机如何解题  计算机语言  高级程序设计语言及其基本特征  高级程序设计语言的实现

2.1.1 程序 程序设计  程序:是用计算机语言对所要解决的问题中的 数据以及处理问题的方法和步骤所做的完整而 准确的描述,描述的过程成为程序设计。  程序设计过程中密切相关的两个方面: 1 、数据结构 2 、算法 程序=数据结构 + 算法  即:程序=数据结构 + 算法

程序设计涉及四个方面问题: 数据结构、算法、编程语言以及设计方法 程序设计基本步骤: 1. 确定要解决的问题。 2. 分析问题,建立数学模型。 3. 选择计算方法。 4. 确定数据结构和算法。 5. 绘制流程图。 6. 编写程序。 7. 调试程序。 8. 整理资料,交付使用。 程序设计过程

2.1.3 程序设计技术与基本原则  问题规模不大时:程序设计的核心是算法和数据结 构。  问题具有较大规模时:程序设计方法(体现在程序 的组织结构和层次设计)非常重要。  程序设计三要素:算法、数据结构以及程序设计方 法学。

评价程序质量性能的准则: 1. 正确性:判断程序质量首要标准。 2. 可靠性:程序反复使用中保持不失败的概率。 3. 简明性:要求程序简明易懂。 4. 有效性:在一定软硬件条件下,程序综合效率的 反映。 5. 可维护性:分为校正性维护、适应性维护和完善 性维护。关系到程序的可用性。 6. 可移植性:程序应尽可能适应各类运行环境,提 高程序的复用。

2.2.1 计算机语言  算法是用语言描述的。人能够理解的算法 一般是用自然语言描述的。而计算机所需 要的是计算机能够理解的算法,因此就要 用计算机能够理解的语言,即使用计算机 语言进行设计。

 计算机语言是人们设计的专用于人 与计算机交流、进而计算机能够自 动识别的语言。用计算机语言描述 的算法就是计算机程序,程序设计 是设计、编制和调试程序的方法和 过程。

机器语言汇编语言 高级语言  计算机语言有三种类型:机器语言、汇编语言和 高级语言。  1 、机器语言:  计算机能直接执行的语言  程序全部由二进制代码组成  程序全部由二进制代码组成。  2 、汇编语言:  汇编语言属于过程式语言 源程序 目标程序  汇编程序的任务是将汇编语言编写的源程序翻译成计算机 能够直接理解并执行的机器语言程序,即目标程序。  3 、高级语言:  世界上第一个高级语言是 FORTRAN 语言 目标程序,有两种方式:编译和解释  将高级语言源程序翻译成计算机能直接理解并执行的二进 制代码的目标程序,有两种方式:编译和解释

2.2.2 计算机语言分类  按语言级别:机器、汇编、高级语言。  按用户要求: 1 、过程式语言:用户可以描述一系列可顺序执 行的运算。如: FORTRAN 、 C 、 PASCAL 、 COBOL 等。过程式程序设计主要涉及数据结构 的确定,求解算法的设计,代码文档的组织和 测试等内容。 2 、非过程式语言:不需要指明计算过程的 语 言。如: SQL 。

 按应用范围:通用语言和专用语言。  目标非单一的语言称为通用语言,如: PASCAL , C , COBOL , FORTRAN  目标单一的语言称为专用语言,如自动数控程序工具 语言 APT  按使用方式:  1 、交互式语言:所编写的程序在执行过程中可以向 用户发出提示、警告等信息。如: BASIC 、 APL 等。  2 、非交互式语言:所编写的程序在执行过程中不可 以向用户发出提示、警告等信息。如: FORTRAN 、 C 、 PASCAL 等。

面向过程的程序设计语言 数据库语言 面向对象的程序设计语言  高级语言类型: 1 、面向过程的程序设计语言:将任务中的各步骤逐 一编写,对问题描述接近于问题的求解过程。如 BASIC 、 FORTRAN 、 C 等。 2 、数据库语言:非过程语言。适合对数据管理。其 特点是只关心 “ 做什么 ” ,而不用理会 “ 怎么做 ” 。如: SQL 。 3 、面向对象的程序设计语言:提供相关机制,使编 程者可以按照人类思维的最一般规律,以与所研究 的对象认知程度相同步的方式开发软件。如: JAVA 、 C++ 、 Delphi 、 PowerBuilder 等。

2.2.3 几种高级语言特点 本节知识仅作了解  FORTRAN  FORTRAN 主要应用于科学与工程领域中的数值运算。 FORTRAN 程序由一个主程序和一系列的子程序构 成,编译单元是 “ 程序 ” 。 FORTRAN 程序特点:紧凑、灵活方便、结构清晰。  ALGOL60  ALGOL60 特点:嵌套性、动态性、递归性和语言描述的严谨 性。

 PASCAL  PASCAL 系统体现结构程序设计思想的第一种语言,既适于 描述数值问题算法,又适于描述非数值问题算法。 PASCAL 程序特点:结构清晰,便于验证程序的正 确性、简洁、精致;控制结构和数据类型丰富,表 达力强、效率高、易移植。  BASIC  BASIC 特点: 1 、小巧灵活,简单易懂,使用方便; 2 、具有交互性。 BASIC 不仅适用于数值运算,也适用于数据处理, 以及实时控制。

 C  C 适合于作为系统描述语言,可用于编写系统软件 和应用软件。 C 语言特点: 1 、 C 是中级语言。可以对位、字节和地址进行操 作。 2 、 C 是结构化语言。 C 以函数形式提供,函数间 可相互调用,同时提供各类程序流程控制语句, 使程序完全结构化。 3 、 C 语言功能齐全,数据类型丰富,引入指针使 程序效率更高。 4 、使用范围广泛。

 Java  Java Sun 公司所开发的面向对象的 Internet 编程语言, 具有简单、动态、可移植、与平台无关和高性能 等特点。 Java 保留 C++ 基本语法、类和继承等机制,删除 了一些不好的特征,比 C++ 更为简单。但是执行 效率不是很高,基于 Java 是主要应用于网络浏览 器中,考虑到网络传输中的等待时间, Java 效率 问题不是很明显。

 Visual Basic  Visual Basic Windows 下面向对象的可视化开发工具,提供了 开发 Windows 应用程序迅速、简捷的方法。功能 强大、使用图形用户界面 (GUI) ,可视化程度高, 复用性好。  C++  C++ 在 C 基础上发展起来,包含 C 的所有特征。同时添 加 C 所不支持的面向对象编程的完全支持。 C++ 是高效的编程语言,既可以进行过程化程序 设计,又可以进行面向对象程序设计。 C++ 应用范围非常广泛。

 Delphi  Delphi Borland 公司所推出的可视化编程环境。使用了 Windows 图形用户界面的许多先进特性和设计思 想,采用面向对象程序语言、快速的编辑器和领 先的数据库技术。 和 VB 相比, Delphi 运行速度更快,编译后不需要 其他的支持库。数据库功能相当强大,特别适合 编写数据管理系统。

2.2.4 对程序设计语言的基本要求  对软件的 10 条一般要求  对软件的 10 条一般要求 1 、可理解性 2 、完整性 3 、简明性 4 、可移植性 5 、可维护性 6 、可测试性 7 、人机界面是否友好 8 、可靠性 9 、结构性 10 、效率  ( 2008 年 1 月考题)为保证软件的质量,对软件 有一些基本要求,请说出 5 条针对软件本身的一 般要求。

 对程序设计语言的一般要求 1 、用户界面好; 2 、对硬件、软件环境要求低; 3 、对硬件资源的利用程度高; 4 、代码质量高; 5 、用途广泛; 6 、容易调用其它软件; 7 、自身发展快。

2.3 高级程序设计语言及基本特征 计算机程序的基本构成要素: 常量、变量、表达式、语句、函数等

2.3.1 常量、变量、表达式  常量  常量:程序运行过程中其值保持不变。如固定的 数值或字符串。也可以用符号来代表某一个常值。 如可将 PI 定义成常量 PI= 。  变量  变量:程序运行过程中其值可以改变的量。变量 包括变量名和变量的值。  表达式  表达式:由常量、变量、函数调用和运算符组成 的序列。如 C 语言中: 2*PI*r 就是一个求半径为 r 的 圆的周长表达式。

2.3.2 语句和函数  语句 赋值语句 输入输出语句 结构控制语句  语句:构成程序的基本单位。可分为:可执行语 句和说明语句。 可执行语句包括赋值语句、结构控制语句、输入 输出语句等。 赋值语句:用于对变量进行赋值。 一般形式 : 输入输出语句:用于执行输入输出。 结构控制语句:用于对程序流程的控制。 包括:选择控制、循环控制、转移控制、函数调 用和返回语句等。

 函数  函数 函数是程序设计语言提供给用户的一系列现成的 程序,或用户为了实现相关功能自行编写的一段 子程序。 在 C 中,程序是由函数构成,通过函数来实现。

2.4 高级程序设计语言的实现  要使计算机能识别程序设计语言编写的程序,需要 对程序进行 “ 翻译 ” 。 编译方式 解释方式 编译程序解释程序  将高级语言程序翻译成机器语言一般有两种做法: 1 、编译方式 2 、解释方式 相应翻译程序称为:编译程序和解释程序  编译方式:整个源程序、生成目标程序、然后执行  解释方式:边解释边执行、不产生目标程序

编译程序 编译程序  编译过程示意图 符号表格 管理器 词法分析 语法分析 语义分析 中间代码生成 代码优化器 代码生成器 错误处理器

 程序的编译与执行过程  ( 2009 年 7 月考题)请说明要在计算机上运行一 个用 C 语言编写的程序,要经过怎样的处理过程。 目标程序目标程序结果结果源程序源程序可执行程序可执行程序 编译 连接 执行 编译程序 编译程序

1 、( 2008 年 1 月)计算机能直接执行的语言是( ) A 、机器语言 B 、汇编语言 C 、高级语言 D 、目标语言 2 、( 2008 年 7 月)汇编语言属于( ) A 、函数式语言 B 、逻辑语言 C 、过程式语言 D 、非过程式语言 3 、( 2009 年 1 月)汇编程序的任务是( ) A 、将汇编语言编写的程序转换为目标程序 B 、将汇编语言编写的程序转换为可执行程序 C 、将高级语言编写的程序转换为汇编语言程序 D 、将高级语言编写的程序转换为可执行程序 历年试题 A C A

4 、( 2008 年 7 月)世界上第一个高级语言是( ) A 、 BASIC 语言 B 、 C 语言 C 、 FORTRAN 语言 D 、 PASCAL 语言 5 、( 2008 年 1 月) JAVA 语言的类别是( ) A 、面向过程 B 、面向问题 C 、面向对象 D 、面向硬件 6 、( 2008 年 7 月) C 语言的类别是( ) A 、面向过程 B 、面向问题 C 、面向对象 D 、面向硬件 7 、( 2009 年 1 月) C 语言是( ) A 、机器语言 B 、汇编语言 C 、高级语言 D 、目标语言 历年试题 C C A C

8 、( 2008 年 1 月)高级语言源程序的翻译有两种方式,一种是 ________ ,另一种是 ________ 。 9 、( 2008 年 1 月)为保证软件的质量,对软件有一些基本要求, 请说出 5 条针对软件本身的一般要求。 10 、( 2009 年 7 月)请说明要在计算机上运行一个用 C 语言编写的 程序,要经过怎样的处理过程。 历年试题 P46 编译 解释 P53