网站大量收购闲置独家精品文档,联系QQ:2885784924

C语言程序设计〔2程序的简单算法指定〕.ppt

C语言程序设计〔2程序的简单算法指定〕.ppt

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

C语言程序设计 第二章 程序的简单算法制定 2.1 结构化程序的算法制定 2.2 结构化程序的算法描述 2.3 算法制定的范例 §2.1 结构化程序的算法制定 1利用计算机处理问题简述 §2.1 结构化程序的算法制定 例2.1 从键盘输入3个数,找出其中最小的那个数。 分析:1、需变量的个数----3个 2、先比较a,b的值,把小的存在min中。 3、再用min与c比较,把数值小的存放在min中。 如果 ab 则 min=a,否则min=b; 如果cmin则min=c, 否则不变。 画出对应的流程图。 演示程序ex201 【例】让某学生解方程 ax2+bx+c=0 求解过程: §2.2 结构化程序的算法描述 什么是算法 为解决一个问题所采取的方法和步骤称为算法。 算法的特性 有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性。 算法有两个很重要的方面: (1)按什么顺序或步骤执行 (2)用什么语句来实现 §2.2 结构化程序的算法描述 自然语言 特点:易懂、冗长、易产生歧义 流程图 N-S结构化流程图 PAD图 伪代码 计算机语言 一、算法(algorithm) 二、算法与流程图——传统流程图 特点: 直观形象; 使用流线。 缺点: 占面积大,使用流线任意转移,易出现“乱麻”现象,造成编程与阅读程序困难。 二、算法与流程图——N-S结构化流程图 77年美学者I.Nassi和B.Scheiderman提出。 特点 ①取消流线 ②不允许流程任意转移,只能从上而下顺序执行 ③规定三种基本结构的流程图单元,由这些基本结构象搭积木似的组成各种算法(结构化设计)。 优点 算法清晰,流程不会无规律乱转移。 二、算法与流程图————三种基本结构 通常情况下,程序中的语句是以所编写的顺序一句接一句地执行,这种执行方法称为“顺序执行”。许多C语句能够让程序员指定不按编写顺序执行下一条执行语句,这种执行方法称为“控制转移”。 Bohm和Jacopini的研究证实,所有的程序都能够只用三种控制结构编写,即 ◆顺序结构 ◆选择结构(selection structure) ◆循环结构(repetition structure) 顺序结构是C语言的基本结构,除非指示转移,否则计算机自动以语句编写的顺序一句一句地执行C语句。 任何C语言程序都是由七种控制结构(顺序结构、三种选择结构和三种循环结构)构成的。 二、算法与流程图————三种基本结构 顺序结构 A块、B块顺序执行(每块代表一个或一组操作) 二、算法与流程图——三种基本结构 选择结构 条件p成立时执行a块(否则执行b块) if 选择结构 条件为真时执行某个指定的操作,条件为假时跳过该操作(单路选择) if…else选择结构 条件为真时执行某个指定的操作,为假时执行另一个指定的操作(双路选择) switch选择结构 根据表达式的值执行众多不同操作中的某个指定的操作(多路选择) 二、算法与流程图——三种基本结构 循环结构 分当型和直到型两类。 当型 先判断,只要条件为真就反复执行A块,为假则结束循环。 直到型 先执行A块,再判断条件是否为真,为真则继续执行循环体,为假则结束循环。 C语言提供了三种循环结构,即while循环结构,do…while循环结构和for循环结构。 §2.2.3 PAD图 §2.3 算法制定范例 例2.4 把从键盘输入的大写字母转换成小写字母,输出结果。 问题: 1、描述算法 2、根据算法编写C程序 3、运行检查程序是否正确。 演示ex202 §2.3 算法制定范例 例2.5 已知实数a和b,计算u的值:u=(r+s)2。其中,当ab时,r=a2-b2,s=a/b;当a≥b时,r=b2-a2,s=a/b+4。 算法(自然语言描述): ①从键盘输入实数a和b。 ②如果ab,则r=a2-b2,s=a/b;否则,r=b2-a2,s=a/b+4。 ③计算u的值: u=(r+s)2。 ④输出u的值。 /*例2.5*/ #includestdio.h main() { float a

文档评论(0)

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

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

1亿VIP精品文档

相关文档