第4章分支结构程序设计用分析.ppt

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

第4章 分支结构程序设计 4.1 算法与基本程序结构 4.1.1 算法 著名的计算机科学家沃思曾提出一个经典公式: 数据结构+算法=程序 这一公式说明: 程序由数据结构和算法两部分构成。 数据结构(Data Structure)是数据的描述和组织形式。 算法(Algorithm)是指对操作步骤的描述。 编写程序的关键就在于合理地组织数据和设计算法 1. 算法的概念 算法:为解决一个问题而采取的方法和步骤,就称为“算法”。 计算机算法:计算机能够执行的对信息加工处理的方法。 计算机算法的分类: 数值运算算法:用于解决求数值解的问题,如计算方程的根、计算积分等; 非数值运算算法:解决需要用分析推理、逻辑推理才能解决的问题,如查找、排序、人工智能中的许多算法。 2. 简单算法描述 例如:写出求1*2*3*4*5的算法。 4.2 基本程序结构 所有程序都可以由如下三种基本结构完成: 顺序结构:是最简单的一种结构,顺序结构中的各部分操作按照书写顺序依次执行,不存在任何跳转。 分支结构:也叫选择结构,通过条件判断选择程序执行流程。 循环结构:是对一组操作进行重复操作的结构,往往需要借助对循环控制条件的判断,决定是否继续重复执行操作。 4. 2. 1算法的表示 计算机算法可以采用如下方式来表示: 自然语言描述 传统流程图描述 NS流程图描述 算法的表示 自然语言描述算法: 自然语言就是人们日常生活中所使用的语言,可以使用人类语言加上数学语言描述一个算法的实现。 特点:通俗易懂,但描述不直观、文字冗长,容易造成歧义。一般不采用这种方式。 1. 流程图的算法描述 流程图是描述程序的控制流程和指令(命令/语句)执行情况的有向图,它是一种比较直观的表达形式,常用的流程图符号: 传统流程图描述算法: 传统流程图采用图形符号配合文字说明来表示各种操作。 特点:形象直观,易于理解。 常用的流程图符号如右图所示。 用传统流程图描述顺序结构(如下图) 例1:输入a,b,c三个变量,分别输出a,b,c的值 传统流程图描述选择结构(如下图) 例2: 编写程序,判断输入的整数是否为6,若是,显示R,不是,显示G,否则,显示 W和 S; 本题需要根据所输入的值(假设赋给a)是否为6来选择执行相应的两条语句; 在C语言中判断a中的值是否为6,使用”if a==6”的形式,一般在进行编程之前先画出程序流程图 程序流程图 用N-S流程图 程序代码 #include stdio.h main( ) {int a; printf(“input a: ); scanf(“%d”,a); if(a==6) /*if语句开始*/ { printf(“R!\n); printf(“G!\n); } else printf(“W!\n); printf(“S!\n”); /*if语句结束*/ } 运行结果 第一次运行结果: Input a:6↙ a=6 R! G! 第二次运行结果: Input a:5↙ a=5 W! S! 4. 2. 2 分支结构的算法描述 例1:用自然语言描述n!的求解过程。 第1步:读取n的值。 第2步:如果n0,提示“输入错误”,跳至第6步。如果n≥0,则给存放结果的变量s和代表乘数的变量i赋初值1; 第3步:计算s=s*i; 将乘数变量i增加1,即i=i+1,得到下一个乘数; 第4步:如果i≤n,跳转到第3步,重复执行第3步和第4步,否则执行第5步; 第5步:输出s的值 第6步:结束算法 例 如 : 计 算 n! 流 程 图 算法描述工具2: N-S流程图描述算法: N-S流程图与传统流程图相比,取消流程线的使用,算法只能自上而下执行,更适合结构化程序设计。 N-S流程图是推荐使用的算法描述工具。 用N-S流程图对程序三种结构的描述: 例如:用N-S流程图描述求解n!的算法 3.算法的表示的优缺点 例如:用传统流程图描述求解n!的算法。 4.2.3 分支结构 逻辑运算符与逻辑表达式 1. 字符类型的逻辑表达式 char ch; (ch = a ch = z ) || ( ch = A ch = Z) (ch = 0 ch = 9) 字符型数据 字符变量:ch 字符常量: a 2. 字符常量 a … z A‘… Z 0 …9 \n ASCII字符集:列出所有可用的字符每个字符:惟一的次序值( ASCII 码) 0-9 A-Z a-z ASCII码 3.字符变量 4.字符型数据的输入和输出 字符输入函数getchar 输入一个字符 char

文档评论(0)

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

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

1亿VIP精品文档

相关文档