a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 49|回复: 0

[C语言] 计算机等考二级C语言精编教程:第一章(2)

[复制链接]
发表于 2012-7-31 21:48:08 | 显示全部楼层 |阅读模式
 1.2 算法  学习计算机程序设计语言的目的,是要用语言作为工具,设计出可供计算机运行的程序。' V5 R0 u0 g5 H! S, W! T) g
  在拿到一个需要求解的问题之后,怎样才能编写出程序呢?除了选定合理的数据结构外,一般来说,十分关键的一步是设计算法,有了一个好的算法,就可以用任何一种计算机高级语言把算法转换为程序(编写程序)。' h% \# ]7 g4 K* i/ r) e1 Q5 V, ^
  算法是指为解决某个特定问题而采取的确定且有限的步骤。一个算法应当具有以下五个特性:. D/ Y4 ]$ K$ e( e
  1.有穷性。一个算法包含的操作步骤应该是有限的。也就是说,在执行若干个操作步骤之后,算法将结束,而且每一步都在合理的时间内完成。+ t  p6 \6 q# t) Q
  2.确定性。算法中每一条指令必须有确切的含义,不能有二义性,对于相同的输入必能得出相同的执行结果。
' t7 R- F" j) E" }) V, ?. Y. g, G  3.可行性。算法中指定的操作,都可以通过已经验证过可以实现的基本运算执行有限次后实现。0 E  Y9 Q! O* K' t9 n. H; ]
  4.有零个或多个输入。在计算机上实现的算法是用来处理数据对象的,在大多数情况下这些数据对象需要通过输入来得到。( h7 I( Z; b2 L, ^8 U# V/ v
  5.有一个或多个输出。算法的目的是为了求“解”,这些“解”只有通过输出才能得到。
7 A& c# Q; [- {6 i; ]$ L% R2 D/ @  算法可以用各种描述方法来进行描述,最常用的是伪代码和流程图。
* c; C* {: s  Y; W4 B  伪代码是一种近似于高级语言但又不受语法约束的一种语言描述方式。这在英语国家中使用起来更为方便。  y! N* {& c8 q& O" b9 E8 X
  流程图也是描述算法的很好的工具,一般的流程图由图1.2中所示的几种基本图形组成。, l2 q' M' G, B8 l+ v

$ h" O; @( c: s$ b$ g2 T  由这些基本图形中的框和流程线组成的流程图来表示算法,形象直观,简单方便。但是,这种流程图对于流程线的走向没有任何限制,可以任意转向,在描述复杂的算法时所占篇幅较多,费时费力且不易阅读。: ]' r, d- m7 _8 p6 w
  随着结构化程序设计方法的出现,1973年美国学者I.Nassi和B.Shneiderman提出了一种新的流程图形式,这种流程图表余去掉了流程线,算法的每一步都用一个矩形框来描述,把一个个矩形框按执行的次序连接起来就是一个完整的算法。这种流程图界两位学者名字的第一个英文字母命名,称为N-S流程图。在下一节中将结合结构化程序设计中的三种基本结构来介绍这种流程图的基本结构。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-17 09:46 , Processed in 0.630248 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表