资源描述
C,语言程序设计,C,语言程序设计,C,语言程序设计,C,语言程序设计,上一页,下一页,C语言程序设计教程,第二章程序的灵魂算法,沃思公式,沃思公式:“程序数据结构算法”,数据结构:数据的类型、数据的组织形式,算法:即操作步骤。,程序数据结构算法程序设计方法语言工具,2.1 算法的概念,算法:为解决一个问题而采取的方法和步骤。,吃葡萄问题:先大后小?还是先小后大?,百鸡百钱问题,做饭问题:炒菜、炖菜、米饭、汤,方法一:处理炒菜的原料、处理炖菜的原料、洗米、炒菜、煲汤、炖菜、米饭,方法二:洗米、做米饭、处理炖菜的材料、炖菜、处理炒菜的材料、煲汤、炒菜。,2.2简单算法举例,例2.1求1*2*3*4*5。,原始的方法:,步骤1:先求1*2,得到2;,步骤2:将步骤1的乘积2再乘以3,得到结果6;,步骤3:将6再乘以4,得到24;,步骤4:将24再乘以5,得到120;,提问:如果要求1,2,3,1000,需要写多少个步骤?,修改后的算法,设定两个变量,一个变量代表被乘数,一个变量代表乘数。不另设变量存放乘积结果,而直接将每一步骤的乘积存放在被乘数中。今设,p,为被乘数,,n,为乘数。,S1:,使,p1,S2:,使,n2,S3:,使,pn,,乘积仍放在变量,p,中,可表示为,pnp,S4:,是,n,的值加1,即,n1 n,S5:,如果,n,不大于5,返回重新执行,S3,及其后的步骤,S4、S5;,否则,算法结束。最后得到的,p,的值就是5!。,若将步骤5作如下改动,能否得到正确的结果?,S5:,如果,n5,N,Y,这类似于学习英语中的单词与句法,并正确的运用语法规则写成文章。但是光是语法规则正确的文章,并不见得准确无误的传达了作者的意思,也有可能表错了意。程序也是一样,语法规则正确的程序,却不一定正确的描述了所要解决的问题。,第一步,:,掌握语言的语法规则,包括标识符、关键字、句法规则等。并能正确的运用这些语法规则编成计算机能识别的程序。,学好程序设计语言的关键,拿到一个需要解决的问题,在编程之前,我们首先要确定的就是解决该问题的算法,只有先得出了正确的算法,才能进一步把该算法用程序语言的形式编写出来。,正确的语法+正确的算法=正确的程序,第二步:,掌握解决问题的方法和步骤。,用程序语言编程,就是用计算机看得懂的语言向计算机描述解决某个问题的方法和步骤,计算机就是按照程序的描述,一步一步执行相应操作的。所编写的程序,不但要求语法准确无误,更要求提供的步骤也准确无误,计算机才能按照要求执行出正确的结果。,我们把,对某一特定问题的求解步骤的一种描述,,称为该问题的,算法,。,
展开阅读全文