(1)C语言的缺点主要是表现在数据的封装性上,这一点使得C语言在数据的安全性上有很大缺陷。
(2)C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不做检查等。一般的高级语言对语法检查比较严,能检查出几乎所有的语法错误,而C语言则放宽了语法检查,因此对一个不熟练的编程人员,编一个正确的C程序可能会比编一个其他高级语言程序难一些。
1.3 算法概述
自从计算机出现至今,计算机作为数据处理的工具,使得许多复杂的问题得以解决。一个数学问题,乃至一个具体的计算公式,是否一定能够在计算机上完成,这是以计算机作为计算工具所面临的新问题。计算机算法实际上就是研究如何用计算机来处理实际问题,计算机算法一般简称为算法。
1.3.1算法的基本特征
概括地说,算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。算法强调的是解决实际问题时计算机的执行过程,这与静态的计算公式是有很大区别的。对于一个问题,如果可以通过一个计算机程序,在有限的存储空间内运行并在有限长的时间内结束而得到一个正确的结果,则称这个问题是算法可解的。在解题过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。
作为一个算法,一般应具有以下几个基本特征。
(1)可行性。算法可行性是指算法的每一个步骤原则上都必须能够精确实现。例如,在数值型算法中,不允许执行分母的值为0或者分母非常小的操作,在实数范围内不能求一个负数的平方根等。其次,算法的设计必须能够达到预期的目的,不会因为系统实际条件的限制而发生错误.例如,在算法设计过程中必须考虑到计算机中使用有限位的二进制数来存储数字所带来的误差。
展开