顺序、选择、循环三种基本结构程序设计.
- 格式:doc
- 大小:134.50 KB
- 文档页数:9
C语⾔程序的三种基本结构1、程序结构:在C语⾔程序中,⼀共有三种程序结构:顺序结构、选择结构(分⽀结构)、循环结构; 顺序结构:从头到尾⼀句接着⼀句的执⾏下来,直到执⾏完最后⼀句; 选择结构:到某个节点后,会根据⼀次判断的结果来决定之后向哪⼀个分⽀⽅向执⾏; 循环结构:循环结构有⼀个循环体,循环体⾥是⼀段代码。
对于循环结构来说,关键在于根据判断的结果,来决定循环体执⾏多少次; 注:在逻辑上有⼀种bool类型(也叫boolean类型,布尔类型),只有两个值,即真和假。
C语⾔的判断表达式最终的值就是⼀个bool类型,这个判断表达式的bool值就决定了选择结构如何选择,循环结构如何循环;2、顺序结构:顺序结构很简单,⼀般我们遇到的除了选择结构和循环结构外,都是顺序结构;3、选择结构:C语⾔中常⽤的选择结构主要有以下两种: (1) if else:引⼊关键字:if else else if if (bool值) // 如果bool值为真,则执⾏代码段1,否则执⾏代码段2 { 代码段1 } else { 代码段2 } if (bool值1) // 如果bool值1为真,则执⾏代码段1,否则判断bool值2是否为真 { 代码段1 } else if (bool值2) // 若bool值2为真则执⾏代码段2,否则直接执⾏代码段3 { // 开头的if和结尾的else都只能有⼀个,但是中间的else if可以有好多个 代码段2 } else { 代码段3 }1 #include <stdio.h>23int main(void)4 {5int a, b, max;67 a = 456;8 b = 45;910if (a > b) // 判断表⽰式11 {12 max = a;13 printf("true.\n");14 }15else if (a == b)16 {17 max = a;18 printf("a == b.\n");19 }20else21 {22 max = b;23 printf("false.\n");24 }2526 printf("max = %d.\n", max);2728return0;29 } (2) switch case:引⼊关键字:switch case break default switch (变量) // 执⾏到这⼀句时,变量的值是已知的 { // switch case语句执⾏时,会⽤该变量的值依次与各个case后的常数去对⽐,试图找到第⼀个匹配项,找到匹配的项⽬后, case 常数1: // 就去执⾏该case对应的代码段,如果没找到则继续下⼀个case,直到default 代码段1; // 如果前⾯的case都未匹配,则default匹配。
程序设计的三种基本结构程序设计中的三种基本结构是顺序结构、选择结构和循环结构。
这些结构是用来控制程序执行顺序和逻辑流程的基础。
一、顺序结构:顺序结构是程序中最简单的结构,即按照顺序执行各个语句,一条接一条地执行,没有跳转和分支。
顺序结构利用语句的执行顺序来确定程序的执行流程。
例子如下:```int a, b, c;a=10;b=20;c=a+b;```在上面的例子中,按照顺序结构,首先给变量a赋值为10,然后给变量b赋值为20,最后将a和b的和赋值给变量c。
程序将按照这个顺序执行下去。
二、选择结构:选择结构用来根据一些条件的真假来决定程序的执行流程。
根据条件的结果,可能会选择执行一段代码或者另一段代码。
常见的选择结构有if语句、switch语句等。
例子如下:int x = 10;if (x > 0)//x大于0的情况下执行的代码printf("x is positive");} else//x小于等于0的情况下执行的代码printf("x is not positive");```在上面的例子中,根据if语句中的条件判断表达式x > 0的结果,如果为真,则执行if语句块内的代码;如果为假,则执行else语句块内的代码。
通过选择结构,程序可以根据不同的条件来执行不同的代码块。
三、循环结构:循环结构用来进行重复执行一段代码的操作。
通过判断循环条件的真假来控制循环的执行和退出。
常见的循环结构有for循环、while循环、do-while循环等。
例子如下:```int i;for (i = 0; i < 10; i++)printf("%d\n", i);在上面的例子中,利用for循环结构,通过初始化循环变量i并设置循环条件i < 10以及每次循环完执行的表达式i++来实现了循环打印数字0到9的功能。
循环结构使得程序可以重复执行同一段代码,以达到需要重复执行的任务。
程序设计的主要方法
编程或程序设计的主要方法主要包括结构化编程、面向对象编程和面向过程编程等三种。
结构化编程,这是早期程序设计的主要方法,重点是减少代码的复杂性,提高程序的可读性。
它主要包括顺序、选择和循环等三种基本控制结构。
常见的结构化编程语言有C,Pascal等。
面向对象编程是一种热门的编程方法,强调通过抽象的对象模型以模拟世界中的对象。
这种方法的核心思想是数据抽象、封装、多态和继承。
面向对象编程语言具有良好的扩展性和复用性,是现代大多数复杂应用程序的首选设计方法。
常见的面向对象编程语言有Java,C++等。
面向过程编程是一种以过程为中心的编程方法,强调通过算法来解决问题。
这种编程方法以任务的完成为目标,每个过程都被看作是一个独立的实体。
过程之间通过输入和输出数据进行交流。
常见的面向过程编程语言有Fortran,C等。
此外,还有一些较新的程序设计方法,例如函数式编程、逻辑编程等。
函数式编程是一种以函数为主导的编程方法,逻辑编程则是一种以逻辑推理为基础的编程方法。
这些程序设计方法相互之间并不排斥,往往在实际应用中会结合使用。
程序设计的三种基本结构一、概述程序设计的三种基本结构是顺序结构、选择结构和循环结构。
这三种结构是程序设计中最基础且最重要的部分,它们构成了程序的主体框架,决定了程序的执行流程。
二、顺序结构顺序结构是最简单的一种程序结构,按照程序编写的顺序执行,没有条件判断和循环。
通过顺序结构,我们可以实现程序按照预定的操作步骤依次执行。
例如,在一个简单的计算器程序中,用户输入两个数,程序按照先后顺序进行加、减、乘、除的计算。
顺序结构示例代码:1. 输入第一个数2. 输入第二个数3. 计算两个数的和4. 输出计算结果三、选择结构选择结构根据条件判断的结果选择执行不同的代码块。
条件判断通常使用逻辑表达式,判断结果为真或假。
根据判断结果,程序将执行相应的代码块。
例如,在一个学生成绩管理系统中,根据学生的分数判断其等级,可以使用选择结构实现。
如果分数大于等于90,则为优秀;如果大于等于80,则为良好;如果大于等于60,则为及格;否则为不及格。
选择结构示例代码:1. 输入学生分数2. 如果分数大于等于90,输出优秀3. 如果分数大于等于80,输出良好4. 如果分数大于等于60,输出及格5. 否则,输出不及格四、循环结构循环结构根据条件是否满足重复执行某一段代码块,直到条件不满足为止。
循环结构包括while循环、do-while循环和for循环。
循环结构在需要重复执行相同或类似操作的情况下非常有用。
例如,在一个打印九九乘法表的程序中,可以使用循环结构实现。
通过嵌套的循环不断改变乘法表中的行和列,直到打印完整个九九乘法表。
循环结构示例代码:1. 初始化行数和列数2. 当行数小于等于9时执行循环1. 当列数小于等于行数时执行循环1. 计算乘积并输出2. 列数加12. 行数加1五、总结顺序结构、选择结构和循环结构是程序设计的三种基本结构。
通过这三种结构的组合和嵌套,我们可以实现复杂的程序逻辑,完成各种任务。
在实际的程序开发中,我们需要合理运用这些基本结构,以提高程序的可读性和可维护性。
梳理c语言顺序、选择、循环三种基本控制结构的程序逻辑思维1.引言1.1 概述在计算机编程中,控制结构是指程序中用于控制代码执行流程的重要部分。
而在C语言中,顺序、选择和循环是最基本的控制结构。
顺序结构是指代码按照其排列的顺序一次执行,选择结构允许根据条件选择性地执行某一段代码,而循环结构则可以重复执行某一段代码。
对于程序员来说,理解和应用这三种基本控制结构是非常重要的。
通过合理运用这些控制结构,程序员可以实现更加灵活和高效的代码逻辑。
本文将重点梳理C语言中顺序、选择、循环三种基本控制结构的程序逻辑思维。
通过具体的定义和特点介绍以及相应的程序逻辑思维示例,读者将能够更加深入地理解和掌握这些重要的程序控制结构。
在接下来的章节中,我们将先介绍顺序结构,其定义和特点,以及通过示例展示如何运用程序逻辑思维来实现顺序执行的代码。
然后,将继续探讨选择结构,包括定义和特点,以及通过示例了解如何使用条件语句来实现选择性执行的代码。
最后,我们将介绍循环结构,其中包括定义和特点的介绍,以及通过示例学习如何使用循环语句来实现重复执行的代码。
通过学习这三种基本控制结构的程序逻辑思维,读者将能够更好地理解和分析编程问题,从而能够写出更加优雅和高效的代码。
最后,我们将总结本文的主要内容,并展望未来在程序逻辑思维方面的进一步研究和应用。
通过本文的学习,我们相信读者将能够深入了解并熟练应用C语言中的三种基本控制结构,为自己的编程能力和代码质量提升打下坚实的基础。
让我们一起开始这个精彩的旅程吧!1.2文章结构文章结构部分内容编写如下:1.2 文章结构文章主要分为引言、正文和结论三个部分。
- 引言部分对本文的主题进行简要介绍,概述梳理C语言顺序、选择、循环三种基本控制结构的程序逻辑思维的意义和重要性。
同时,介绍本文的结构和目的。
- 正文部分是整篇文章的核心部分,主要分为三个小节:顺序结构、选择结构和循环结构。
每个小节会依次介绍相关控制结构的定义和特点,并给出相应的程序逻辑思维示例。
程序的三种基本结构荷兰学者Dijkstra提出了"结构化程序设计"的思想,它规定了一套方法,使程序具有合理的结构,以保证和验证程序的正确性.这种方法要求程序设计者不能随心所欲地编写程序,而要按照一定的结构形式来设计和编写程序.它的一个重要目的是使程序具有良好的结构,使程序易于设计,易于理解,易于调试修改,以提高设计和维护程序工作的效率.结构化程序规定了以下三种基本结构作为程序的基本单元:(1) 顺序结构. 见图1-1在这个结构中的各块是只能顺序执行的. (2) 判断选择结构.见图1-2根据给定的条件是否满足执行A块或B块.图1-1 图1-2 (3) 循环结构.见图1-3和图1-4.图1-3表示的结构称为"当型"循环.当给定的条件满足时执行A块,否则不执行A块而直接跳到下面部分执行.图1-4表示的结构称为"直到型"循环,它的含义是:执行A块直到满足给定的条件为止(满足了条件就不再执行A块).这两种循环的区别是:当型循环是先判断(条件)再执行,而直到型循环是先执行后判断.图1-3图1-4 以上三种基本结构可以派生出其它形式的结构.由这三种基本结构所构成的算法可以处理任何复杂的问题.所谓结构化程序就是由这三种基本结构所组成的程序.可以看到,三种基本结构都具有以下特点:① 有一个入口.② 有一个出口.③ 结构中每一部分都应当有被执行到的机会,也就是说,每一部分都应当有一条从入口到出口的路径通过它(至少通过一次).④ 没有死循环(无终止的循环).结构化程序要求每一基本结构具有单入口和单出口的性质是十分重要的,这是为了便于保证和验证程序的正确性.设计程序时一个结构一个结构地顺序写下来,整个程序结构如同一串珠子一样顺序清楚,层次分明.在需要修改程序时,可以将某一基本结构单独孤立出来进行修改,由于单入口单出口的性质,不致影响到其它的基本结构.。
简述程序设计的四种结构类型程序设计是计算机科学中的重要组成部分,是指根据一定的目标和需求,使用合适的算法和编程语言,将问题分解为若干个可执行的步骤,并通过控制流程和数据交互来解决问题的过程。
程序设计的核心是设计良好的程序结构,根据问题的性质和要求,可以采用不同的结构类型。
本文将简要介绍程序设计的四种结构类型:顺序结构、选择结构、循环结构和函数结构。
一、顺序结构顺序结构是程序中最简单的结构类型,也是最基本的结构类型。
顺序结构是指程序按照代码的先后顺序依次执行,每个语句只执行一次,没有分支和循环。
顺序结构的特点是代码的执行是线性的,没有任何条件判断或循环控制。
例如,下面是一个简单的顺序结构程序,实现了两个数相加并输出结果的功能:```a = 5b = 3c = a + bprint(c)```在这个程序中,首先定义了两个变量a和b,然后将它们相加的结果赋值给变量c,最后输出变量c的值。
程序按照代码的先后顺序执行,没有任何条件判断或循环控制。
二、选择结构选择结构是程序中常用的一种结构类型,根据给定的条件判断,决定程序的执行路径。
选择结构有两种形式:if语句和switch语句。
1. if语句if语句是一种条件判断结构,根据给定的条件判断结果,决定程序要执行的代码块。
if语句的基本语法如下:```if 条件:代码块1else:代码块2```其中,条件是一个布尔表达式,如果条件成立,执行代码块1;否则,执行代码块2。
if语句可以嵌套使用,根据需要可以有多个elif分支。
例如,下面是一个使用if语句实现判断一个数是正数、负数还是零的程序:```num = int(input("请输入一个整数:"))if num > 0:print("这是一个正数")elif num < 0:print("这是一个负数")else:print("这是零")```在这个程序中,首先通过input函数获取用户输入的整数,然后使用if语句判断该整数的正负性,并输出相应的结果。
顺序结构、选择结构和循环结构的程序设计典型例题分析与解答1 在三种选择结构中,能用2个条件,控制从3个操作中选择一个操作执行的选择结构是______选择结构【分析】能用1个条件,控制某个操作做或不做的选择结构是单分支结构;能用1个条件,控制从2个操作中选择一个操作执行的选择结构是双分支结构;能用n(n>l)个条件,控制从n+ l个操作中选择一个操作执行的选择结构是多分支结构。
【答案】多分支2 在三种循环结构中,先执行循环操作内容(即循环体),后判断控制循环条件的循环结构是______循环结构。
【分析】当型循环结构是先判断控制循环的条件,条件成立,执行循环体;条件不成立,则退出循环体。
次数型循环结构也是先判断是否达到循环次数,没有达到循环次数,执行循环体;达到循环次数的,退出循环。
只有直到型循环结构才是先执行循环体,然后再判断控制循环的条件,如果条件成立,进行循环;条件不成立,退出循环。
【答案】直到型3 使用“getchar( )”函数时,程序的开头必须写一条包含命令为____________。
【分析】凡是使用系统函数的程序,都要在程序的开头写一条包含命令,包含命令中的“头函数.h”是一个文件,其中有关于该系统函数的定义。
系统函数“getchar( )”是在名为“stdio.h(标准输入输出函数)”的头函数文件中定义的。
【答案】#include"stdio.h"或#include<stdio.h>4 执行输入语句“scanf("x=%c,y=%d",&x,&y);”,要使字符型变量X的值为'A'、整型变量y的值为12,则从键盘上正确的输入是( )①'A'/②A/③x=A/ ④x=A,y=12/12/ 12/ y=12/ 说明:备选答案中的"/"表示回车换行键【分析】输入语句的格式控制符串中的“x=”、“,”、“y=”都是非格式控制符,在输入时必须原样位置输人,所以只有备选答案④才符合这个要求。
scratch中的顺序结构,选择结构,循环结构在Scratch编程中,顺序结构、选择结构和循环结构是非常重要的概念。
它们为我们提供了编写程序的基本框架,使我们能够控制代码的执行流程和逻辑。
在本文中,我将深入探讨这些结构,并共享我对它们的个人观点和理解。
1. 顺序结构在Scratch中,顺序结构是最基本的编程结构之一。
它指的是代码按照从上到下的顺序依次执行,每一行代码都会被顺序执行一次。
这意味着,如果我们在程序中依次执行了A、B、C三个代码块,那么它们的执行顺序就是A→B→C。
顺序结构简单直观,适用于方便地编写一系列的指令。
2. 选择结构与顺序结构相比,选择结构引入了条件判断的概念,根据不同的条件执行不同的代码块。
在Scratch中,选择结构通常使用“如果…那么…”的形式表达。
我们可以编写这样的代码:如果小猫碰到了小鱼,那么播放“吃鱼”的动画;否则,播放“走路”的动画。
选择结构使程序能够根据不同的情况做出不同的反应,增强了程序的灵活性和智能性。
3. 循环结构循环结构是指在满足特定条件的情况下重复执行一段代码块。
在Scratch中,循环结构通常使用“当…重复”或“重复…次”来表达。
我们可以编写这样的代码:当小猫碰到小鱼时,播放“吃鱼”的动画,然后重复这个过程10次。
循环结构使程序能够高效地完成重复性的任务,减少了代码的重复性,提高了代码的可维护性和可读性。
总结回顾通过本文的探讨,我们深入了解了Scratch中的顺序结构、选择结构和循环结构。
顺序结构使程序能够按照一定的顺序执行指令;选择结构使程序在不同条件下做出不同的反应;循环结构使程序能够高效地完成重复性的任务。
这些结构为我们提供了丰富的编程工具,帮助我们更加灵活和高效地编写程序。
个人观点和理解在我看来,顺序结构、选择结构和循环结构是编程中非常基础且重要的概念。
它们不仅提供了基本的编程逻辑,还为我们奠定了编程的基础框架。
掌握好这些结构,能够帮助我们更好地理解程序的执行流程,提高编程的效率和质量。
昆明理工大学信息工程与自动化学院学生实验报告(2012 —2013 学年第一学期)课程名称:结构化程序设计与C语言开课实验室:系机房444 2012 年10月21日一、实验的目的1、学习在VC++环境下编辑调试C语言程序的方法。
2、掌握在C语言中的各种数据类型,以及如何定义整型、实型、字符型的变量,并进行赋值的方法。
3、掌握顺序程序的思路,特别是赋值语句的使用方法。
4、掌握各种类型数据的输入输出方法的正确应用,熟悉各种格式控制符的作用。
5、学会在选择结构中正确应用关系表达式及逻辑表达式。
6、熟练掌握if语句和switch语句的使用。
7、学会选择结构问题算法的编制与调试应用。
8、熟练掌握while语句、do-while语句和for语句实现循环的方法。
9、学会循环问题的编制与调试、运行。
二、实验内容与要求本实验涵盖顺序、选择、循环三部分程序设计的应用,要求每部分完成两个问题的源代码的编辑、编译、连接与运行,最终产生相关的运行结果,按规定要求提交相应的实验报告。
具体要求完成的问题如下:(注意:在模板中给出了题的页数与题号,请写正式报告时将书上的题目内容代替页数与题号)(1)P82/2(2)P84/6(3)P112/6(4)P113/9(5)P140/5(6)P141/16三、算法设计思想或程序流程图(1)设:五年期,三年期,二年期,一年期,活期存款分别为:r5,r2,r3,r0;第一种,第二种,第三种,第四种,第五种五年期存款的本息和分别为p1,p2,p3,p4,p5。
则有:p1=p*((1+r5)*5); 一次存5年期p2=p*(1+2*r2)*(1+3*r3); 先存2年期,到期后将本息再存3年期p3=p*(1+3*r3)*(1+2*r2); 先存3年期,到期后将本息再存2年期p4=p*pow(1+r1,5); 存1年期,到期后将本息存再存1年期,连续存5次p5=p*pow(1+r0/4,4*5); 存活期存款。
活期利息每一季度结算一次再将所得数据一一输出即可。
(2) 先分别把c1,c2,c3,c4,c5分别赋初值为c,h,I,n,a.想要让它们的字母分别增加四位。
只需将它们的ASCII码增加4个数就可以。
便有c1=c1+4; c2=c2+4 c3=c3+4; c4=c4+4; c5=c5+4;再将所得值以字符型输出便可(3)输入x,用if语句判断X的值的范围。
X<1将x的值赋给y并输出。
除此情况之外(x>1)再进行分类。
若x<10则y=2*x-1。
除此情况之外,y=3*x-11. (4)先判断它的位数。
如果这个数大于9999则输出5;排除这种情况,大于999则输出4…以此类推。
分别输出每一位数字:几位数字便除以此位数的最小值。
如9999便除以1000,由于都是整型,便得到9。
依次除下去。
得到的各位整数在赋给各个变量,反序输出。
(5)用tn=tn+a语句代表赋值后的tn为i个 a组成数的值用 sn=sn+tn语句代表赋值后的sn为多项式前i项之和用while语句实现在I<n的情况下让i自增。
(6)将菱形分为上下两个部分,每个部分为一个三角形。
设置两个变量I,j分别控制行和列。
再用两个循环语句分别对上下两个三角进行控制。
四、源程序代码(1)#include <stdio.h>#include <math.h>int main(){float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;p1=p*((1+r5)*5);p2=p*(1+2*r2)*(1+3*r3);p3=p*(1+3*r3)*(1+2*r2);p4=p*pow(1+r1,5);p5=p*pow(1+r0/4,4*5);printf("p1=%f\n",p1);printf("p2=%f\n",p2);printf("p3=%f\n",p3);printf("p4=%f\n",p4);printf("p5=%f\n",p5);return 0;}(2)#include <stdio.h>int main(){char c1='C',c2='h',c3='i',c4='n',c5='a';c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;printf("passwor is %c%c%c%c%c\n",c1,c2,c3,c4,c5);return 0;}(3)#include <stdio.h>int main(){ int x,y;printf("输入x:");scanf("%d",&x);if(x<1) /* x<1 */{ y=x;printf("x=%3d, y=x=%d\n" ,x,y);}else if(x<10) /* 1=<x<10 */{ y=2*x-1;printf("x=%d, y=2*x-1=%d\n",x,y);}else /* x>=10 */{ y=3*x-11;printf("x=%d, y=3*x-11=%d\n",x,y);}return 0;}(4)#include <stdio.h>#include <math.h>int main(){int num,indiv,ten,hundred,thousand,ten_thousand,place;printf("请输入一个整数(0-99999):");scanf("%d",&num);if (num>9999)place=5;else if (num>999)place=4;else if (num>99)place=3;else if (num>9)place=2;else place=1;printf("位数:%d\n",place);printf("每位数字为:");ten_thousand=num/10000;thousand=(int)(num-ten_thousand*10000)/1000;hundred=(int)(num-ten_thousand*10000-thousand*1000)/100;ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10;indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10);switch(place){case 5:printf("%d,%d,%d,%d,%d",ten_thousand,thousand,hundred,ten,indiv);printf("\n反序数字为:");printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,ten_thousand);break;case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);printf("\n反序数字为:");printf("%d%d%d%d\n",indiv,ten,hundred,thousand);break;case 3:printf("%d,%d,%d",hundred,ten,indiv);printf("\n反序数字为:");printf("%d%d%d\n",indiv,ten,hundred);break;case 2:printf("%d,%d",ten,indiv);printf("\n反序数字为:");printf("%d%d\n",indiv,ten);break;case 1:printf("%d",indiv);printf("\n反序数字为:");printf("%d\n",indiv);break;}return 0;}(5)#include <stdio.h>int main(){int a,n,i=1,sn=0,tn=0;printf("a,n=:");scanf("%d,%d",&a,&n);while (i<=n){tn=tn+a; /*赋值后的tn为i个 a组成数的值*/sn=sn+tn; /*赋值后的sn为多项式前i项之和*/a=a*10;++i;}printf("a+aa+aaa+...=%d\n",sn);return 0;}(6)#include <stdio.h>int main(){int i,j,k;for (i=0;i<=3;i++){for (j=0;j<=2-i;j++)printf(" ");for (k=0;k<=2*i;k++)printf("*");printf("\n");}for (i=0;i<=2;i++){for (j=0;j<=i;j++)printf(" ");for (k=0;k<=4-2*i;k++)printf("*");printf("\n");}return 0;}五、运行结果及分析(1)(2)(3)(4)(5)(6)六、结论与体会(在上机程序调试中遇到的问题、采用的解决办法、得到的收获)通过对C语言进行一个学期的学习后,我对C语言有了初步的掌握,也对C 语言的特点和优点有了更深入的体会。
C语言的语言简洁,紧凑,使用方便灵活;运算符丰富,使表达式的类型多样化;数据类型也很丰富,比如字符型,实型,整型…而且在学习的过程中,我越来越体会到了C语言编程的多样性,从初学的只有一种编法,到后来的渐渐会用不同的语句,不同的结构对同一问题进行编写。