《程序设计基础01》.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《程序设计基础01》.ppt

程序设计基础(C语言) 东北大学高级语言程序设计课程组 课程网站:/cxsj 计算机及程序设计概述 计算机和计算机程序 计算机的基本工作原理 计算机硬件和计算机软件 计算机硬件 主机 外部设备 计算机软件 裸机 要使计算机解决各种实际问题,必须有软件的支持,计算机软件着重研究如何管理计算机和使用计算机的问题 ,没有软件支持的计算机就是一堆废铁 指令与程序 指令 指令就是计算机执行某种操作的命令,是硬件能理解并能执行的语言,是机器语言的一个语句,是程序员进行程序设计的最小语言单位。 指令的组成 指令由操作码和操作数构成 Mov 3,reg1 Mov 5,reg2 Add reg1,reg2 End 指令与程序 程序 程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的、可以连续执行并能够完成一定任务的指令序列的集合。 程序的开发 描述问题(算法) 程序设计语言 计算机软件 程序设计语言 机器语言 二进制指令 与计算机硬件的设计密切相关 汇编语言 汇编语言与机器语言的指令具有一一对应的关系,指令的操作码和操作数地址全部用指定的符号表示 汇编语言依然依赖于计算机系统结构,只能为特定的机器所识别,是面向机器的语言 程序设计语言 高级语言 与具体的计算机指令系统无关的计算机语言 高级语言的分类 面向过程的语言 C、Pascal 面向对象的语言 C++、Java、.Net 面向特定应用的语言 SQL 为什么学习c语言? C语言是目前实际程序设计工作中使用最广泛的语言之一 它包含了程序设计需要理解和使用的基本程序机理和主要机制 掌握这些机制就可以理解程序与程序设计的主要问题。 目前有许多软件系统是用C编写的,或基本上是用C编写的 学习程序设计的同时也能掌握一种实用的程序设计工具 C语言是一种很灵活的语言 既可以在较高层次上做,也可以在较低级的层次上做 很多新型的语言都是衍生自C语言 有些本身就是C语言的扩充和发展 程序设计是计算机领域的基础课程 C语言适合作为计算机领域许多后续课程的教学语言 授课重点 侧重学习一个具体问题的算法化的过程 学习应该掌握的基本编程技巧以及C编程的风格和艺术 讨论 怎样编写出一个好的程序? 简单、实用的原则 本课程的组织 程序设计 什么是程序设计? 使用某种程序语言编写程序的过程,就是用计算机语言对所要解决的问题中的数据以及处理问题的方法和步骤所做的完整而准确的描述的过程 怎样进行程序设计? 分析问题 确定算法 编制程序 调试程序 程序设计 一个完整的程序 数据结构、算法、编程语言和程序设计方法 对数据的描述(数据流) 指定数据的类型和数据的结构 对操作的描述(控制流) 指定操作的步骤,既算法 程序=数据结构+算法 算法 什么是算法(Algorithm)? 就是为了解决一个特定的问题而采取的确定的、有限的、按照一定次序进行的、缺一不可的执行步骤 注意 为了有效地利用计算机解决实际问题,在设计算法时不仅要保证计算机执行算法的正确性,还要考虑算法的质量,选择适合于具体问题的算法 算法 通常计算机算法分为两大类:数值运算算法和非数值运算算法 数值运算是指对问题求数值解 有确定的数学模型 非数值运算是指事务处理过程 种类繁多,很难提供统一规范的算法 更多的是需要用户设计其算法的 算法 例1:猴子吃桃问题。有一堆桃子不知数目,猴子第一天吃掉一半,又多吃了一个,第二天照此方法,吃掉剩下桃子的一半又多一个,天天如此,到第11天早上,猴子发现只剩一只桃子了,问这堆桃子原来有多少个? 算法 输入三个数,然后输出最大的数 算法的两个要素 基本功能操作 数据运算和传输 控制结构 顺序、选择和循环三种基本控制流程 算法的特性 有穷性 应含有有限的操作步骤,不能是无限的。有穷性指在 “合理的限度之内” 唯一性 每一个步骤都是确定的,只有一个涵义,不可以为二义性 有零个或多个输入 在执行算法时需要从外界获取必要的信息 有一个或多个输出 算法执行的目的就是为了求解,“解”就是输出的信息 没有输出的算法是没有意义的 正确性 每一个步骤应当被有效的执行,并得到确定的结果 算法的表示 流程图 算法的表示 流程图 算法的表示 N-S图 是适合结构化程序设计方法的图形工具 N-S流程图无法表示非结构化的程序 算法的表示 UML 面向对象的分析与设计工具 适合于描述复杂系统元素之间的关系,不关注具体算法 程序设计基本步骤 确定数学模型 实际问题的准确描述 算法描述 解决问题的具体步骤 编写程序 将已设计好的算法表达出来 程序测试 保证程序的正确性 结构化的程序设计方法 程序的三种基本结构 问题的提出 结构化程序设计必须采用的结构 顺序结构、选择结构和循环结构 被称为程序设计的三种基本结构 算

文档评论(0)

ghfa + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档