c语言课件 第2章 算法简介及程序的基本结构_第1页
c语言课件 第2章 算法简介及程序的基本结构_第2页
c语言课件 第2章 算法简介及程序的基本结构_第3页
c语言课件 第2章 算法简介及程序的基本结构_第4页
c语言课件 第2章 算法简介及程序的基本结构_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章算法简介及程序的基本结构本章要点:了解算法的基本概念掌握程序的基本结构2.1算法的基本概念1.算法(algorithm)是对特定问题求解步骤的一种描述。程序=数据结构+算法2.算法的五个特性:有穷性:一个算法必须在执行有穷步之后结束。确定性:算法的每一步必须是确切定义的。对于相同输入必须得到相同结果。可行性:算法的每一步都是能够实现的,即可操作的。输入:算法有零个或多个输入。有输出:算法执行完毕,必须有一个或若干个输出结果。流程图N-S图怎样描述算法

起止框输入/输出框判断框处理框流程线程序流程图示例:开始i=1gi>=80输出gii=i+1i<=50结束YYN流程图表示法2.2程序设计中的三种基本结构顺序结构——自顶向下,无分支,无转移选择结构——有分支,需条件判断循环结构——有转移,某些语句可重复执行当型循环直到型循环综合举例一、顺序结构

BA(a)AB(b)先执行A操作,再执行B操作,两者是顺序执行关系。N-S结构流程图

二、选择结构当P条件为真时,执行A模块,否则执行B模块。APB真假(a)P真假AB(b)例:用N-S流程图描述:找出x、y中的较大者x>y?TFxmaxymax例:对学生成绩s进行判断,及格则输出PASS字样s>=60?TF输出"PASS"

s<60?TF输出"PASS"用N/S表示算法如果用流程图如何表示例:使a、b、c降序排序

输入a、b、ca<b?atba

tba<c?ac

b<c?bc

输出a、b、cTTTFFF

入口

k1k2kn

……

出口其中:K为多分支判断条件;

Ai必有一个且只有一个被执行;KA1A2An选择结构的扩充——多分支选择结构

3x-11(0≤x<10)y=2x+5(10≤x<20)x(20≤x<30)

输入xx≥0&&x<30TFx<10TFx<20TFy=xy=3x-11y=2x+5输出x无效

输出y输入x输出X无效3x-11→yx≥0&&x<30x<10x<202x+5→yx→y输出yFFFTTT三、循环结构当P条件成立时,反复执行A,直到P为假。1.当型循环结构PA假真(a)当P为真A(b)当P为真2.直到型循环结构先执行A操作,再判断P是否为假,若P为假,再执行A,直到P为真为止。AP假真(a)A直到P为真(b)

算法举例例:计算5!(1×2×3×4×5)

1→t1→i当i≤5t×i→ti+1→i输出t1→t2→it×i→ti+1→i直到i>5输出t当型循环直到型循环例:基本结构的组合【例1.1】输入一个年份,判断该年是否闰年。(参见教材)右图为流程图。w:标志变量复合循环条件输入nw=0,i=2k=sqrt(n)i<=k&&w==0n%i==0?w=1i++w==0?输出"Yes"输出"No"YFYF

循环分支顺序例:判别一个数是否是素数一个复杂的问题应分解为具有层次关系的多个相对容

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论