算法特性:C语言入门教程讲解

需积分: 1 1 下载量 198 浏览量 更新于2024-07-14 收藏 2.5MB PPT 举报
本资源主要介绍了算法的基本概念和特性,以及如何用C语言进行实现。首先,算法的特性包括: 1. 有穷性:算法必须能在有限的步骤内完成,不能无限循环或无休止地运行。 2. 确定性:算法的每一步都有明确的规定,不会因外部因素而改变其结果。 3. 可行性:算法必须基于现有的计算机技术,能被实际执行。 4. 输入:算法需要输入数据来驱动其执行过程,这些输入可能是用户提供的,也可能是预设的。 5. 输出:算法必须产生确定的结果,通常是解决特定问题的结果。 衡量一个算法好坏的方面包括: - 正确性:算法应能准确地解决问题,不产生错误的结果。 - 可读性:算法应清晰易懂,方便其他开发者理解和维护。 - 健壮性:算法应对异常情况处理得当,避免程序崩溃。 - 时间复杂度与空间复杂度:评估算法效率的重要指标,分别指执行时间和存储空间的需求。 接下来,资源提供了两个实例来展示算法的描述方法,如用C语言编写求阶乘和最小数的程序。实例使用了自然语言描述和流程图的形式,后者是一种直观的工具,通过起止框、输入/输出框、判断框和处理框等图形元素,清晰地展示了程序的执行流程。 Bohra和Jacopini提出的三种基本算法结构是: - 顺序结构:按照代码行的顺序执行,每个步骤依次进行。 - 选择结构(条件语句):根据特定条件决定执行哪一段代码。 - 循环结构:重复执行某段代码直到满足某个条件为止。 这些基本结构可以组合形成任何复杂的算法,且遵循一定的规则,例如不允许结构间的交叉跳转。理解并掌握这些结构对于设计高效的C语言程序至关重要。 总结来说,这个PPT旨在帮助学习者理解算法的基本概念,掌握算法的特性,以及如何用C语言实现和描述算法,包括对算法效率的评估。通过实例和流程图,学习者能够更好地理解和应用这些理论知识。