C语言程序设计教程第2章程序流程
- 格式:ppt
- 大小:665.50 KB
- 文档页数:72
第2章程序的灵魂——算法1. 概念:为解决某一特定问题而采取的具体工作步骤和方法。
2. 举例◆计算1+2+3+……+100的值◆计算1×2×3×……×1000的值◆有50个学生,要求输出他们之中成绩在80分以上的学号和成绩◆判定2000-2500年中的每一年是否闰年3. 算法的表示(1) 自然语言(2) 流程图表示法(3) 伪代码表示法(4) 计算机语言表示法(2) 流程图表示法顺序结构、选择结构和循环结构流程图这三种基本结构有以下共同的特点:1. 只有一个入口;2. 只有一个出口;3. 结构中的每一部分都有被执行到的机会;4. 结构内没有死循环。
用上述基本结构的顺序组合可以表示任何复杂的算法结构,但是基本结构中的流程线使流程图显得较乱,于是1973年美国学者提出了一种新的流程图形式。
在这种流程图中,完全去掉了带箭头的流向线,全部算法写在一个矩形框内。
下面是三种控制结构的N-S图。
例1 求四个数的和算法一:在内存中设一累加用的存储单元S。
第1步:将存储单元S清零。
第2步:输入第1个数a1。
第3步:把a1加到存储单元S中。
第4步:输入第2个数a2。
第5步:把a2加到存储单元S中。
第6步:输入第3个数a3。
第7步:把a3加到存储单元S中。
第8步:输入第4个数a4。
第9步:把a4加到存储单元S中。
第10步:把存储单元S中的结果输出。
算法二:在内存中设一累加用的存储单元S和一计数用的单元I。
第1步:将累加单元S清零。
第2步:将计数单元I清零。
第3步:输入一个数A。
第4步:把A加到累加单元S中。
第5步:计数单元I的值增加1,即I+1=>I。
第6步:若I<4则转去执行第3步,否则,继续执行第7步。
第7步:输出存储单元S中的结果。
开始结束S+A=>S 0=>S 0=>I 输入A I+1=>I I<4输出S 0=>s0=>I输入A S+A=>S I+1=>I 直到I=4输出结果S N-S 图Y例2 求5!开始结束T*i=>t 1=>t 2=>i i+1=>i i>5输出S N例3 将50名学生中成绩在80分以上练习1:交换两个单元的内容。