-
2019-06-10 14:17:53
一、循环结构的思想及意义:
知道了循环结构,那么在生活中也一样,我们每天都在重复做着相同的事情,例如:吸气呼气的过程;又如夏天开电扇,电扇一圈一圈的转,这都是在重复。现在大家玩个游戏,一个人A来说一个人B来做,一个人A说命令“敬礼,礼毕”,另一人B做动作十遍;第一种思维那就是说一下命令就让B执行动作,B执行完动作后,A再继续说命令,B再继续做动作,同样的事情重复十遍。如果利用所学的知识,让你输出十遍“敬礼,礼毕”,你会怎么写程序呢?/* 输出敬礼礼毕十遍 */ #include "stdio.h" void main() { printf("1.敬礼、礼毕\n"); printf("2.敬礼、礼毕\n"); printf("3.敬礼、礼毕\n"); printf("4.敬礼、礼毕\n"); printf("5.敬礼、礼毕\n"); printf("6.敬礼、礼毕\n"); printf("7.敬礼、礼毕\n"); printf("8.敬礼、礼毕\n"); printf("9.敬礼、礼毕\n"); printf("10.敬礼、礼毕\n"); }
那A要让B说一万遍呢,显然如果还是用上面的程序来写的话,那么今天你一个小时不用做别的了,你就在这里慢慢复制粘贴吧!所以肯定有好的办法:A应该对B说执行命令动作“敬礼、礼毕”十遍。同样的问题大家来看第二段程序代码:
/* 输出敬礼礼毕十遍 */ #include "stdio.h" void main() { int i; i=1; while(i<=10) { printf("%d.敬礼、礼毕\n",i); i=i+1; } }
二、while的基本格式
while的基本格式:(流程图如右图所示)
while(表达式)
{
语句1;
……
语句 n;
}
其中表达式代表了循环条件,整个复合语句为循环体。
while语句规范:
1:{和}自成一行
2:语句1—语句n自动缩进
while循环属于当型循环,也就是先判断表达式的值是否为真的(也可以理解为条件是否成立),若为真则循环,否则退出循环。
它的格式变形如下;
表达式1;
while(表达式2)
{
语句;
表达式3;
}
其中表达式1代表了程序循环前的初始值,表达式2代表了控制条件,表达式3代表了增量变化
拿输出1到100为例分析。
最初始的值(假设变量为i)应该是i=1;条件是i<101(或i<=100);语句是输出相应的变量值 printf(“%d ”,i);而表达式3应该是输出一个后进入下一个数,也就是i++;
所以它的代码也就很容易就出来了:void main() { int i; i=1; while(i<101) { printf(“%d ”,i); i++; } }
do—while循环语句
do–while语句
在循环中有当型循环,还有直到型循环。接下来我们就来学习下直到型循环。
一、do—while语句格式
1.do—while语句格式1
表达式1;
do
{
语句;
表达式3;
} while(表达式2);
其中表达式1代表了程序循环前的初始值,表达式2代表了控制条件,表达式3代表了增量变化
这种格式在程序中已经很少用了。主要应用于下种变形格式:
2.do—while语句格式变形
do
{
语句;
} while(条件表达式);
二、do-while语句的思想及意义
do英文翻译成中文是做的意思,那么从上面的结构我们也能看出,do语句后判断条件表达式,如果条件还表达式成立,再次执行语句,直到条件表达式不成立,往下继续执行。所以do—while的中心思想是至少执行一次循环语句。
三、do-while循环结构实例
下面我们一些操作实例来讲解循环结构的逻辑思维过程。
1.求1+2+3+4±—+100和是多少?
(1)步骤1,首先我们应该分析的是,我们要求一个数即和,那么和初值是几呢? sum=0
(2)sum+=1;
(3)sum+=2;
(4)sum+=3;
(5)假如我们如一个变量i来代表值的变化的话那么我们应该也能推算去,求和其实就是
(6)sum+=i;只是i要从1变化到100
(7)while代码参考代码如下/*求1+2+3+---+100的和*/ #include "stdio.h" void main()//求各 { //定义变量并初始化 int i=1; int sum=0; while(i<=100) //条件表达式 { sum+=i; i+=1; //步长 } printf("和是%d",sum); }
(8)do–while代码参考代码如下
/*求1+2+3+---+100的和*/ #include "stdio.h" void main()//求各 { //定义变量并初始化 int i=1; int sum=0; do { sum+=i; i+=1; //步长 } while(i<=100); //条件表达式 printf("和是%d",sum); }
2.输入qq的密码;输入正确则显示登录成功,否则可以一直输入密码直到对为至,假设密码为123456
(1)那么我们分析题目,应该是先输入后判断的一种循环方式,那么应该选择do—while语句
(2)程序中要求我们输入密码,密码可以变,所以要给密码定义成一个变量,我们假设int password;
(3)因为密码是输入的,所以没有初始值
(4)输入密码以后我们应该判断密码是否和默认密码相同
(5)相同则登录成功
(6)不相同则重新
(7)do–while代码参考代码如下/*判断qq密码*/ #include "stdio.h" void main()//登录 { //定义变量并初始化 int password; do { printf("请输入qq登录密码:"); scanf("%d",&password); }while(password!=123456); //条件表达式 printf("登录成功"); }
(8)do—while语句是可以被while()替换,其实循环之间的语句都可以相互替换,哪种方法更适合你,就选那种,也就是说一定要有一种是自己专长的。
(9)参考代码如下 /*登录*/ #include "stdio.h" #include "stdlib.h" void main()//登录 { //定义变量并初始化 int password; while(1) { printf("请输入qq登录密码:"); scanf("%d",&password); if(password==123456) { printf("登录成功"); break; } } }
3.while 与do—while的相同与不同总结?
(1)while 语句是先计算表达式的值,再执行循环体,do…while是执行完一次循环体,再计算表达式的值
(2)当表达式的值第一次为假时,while的循环体一次都不执行,do…while则执行一次循环体;
(3)当表达式的值为真时,两者无区别
(4)在不确定条件次数的情况下,程序一般用while比较多for循环语句
for 循环为当型循环。for循环最容易实现计数控制循环方法。for循环的使用最为灵活,且适合应用在循环次数确定的情况下。
for循环的思想是,先分析清楚循环的初始值,循环的控制条件,循环变量的步长变化,然后直接把语句再写到for的循环体里即可,这样可以让问题想的很清楚,流程也很清楚。
二、for循环语句的应用
for语句是c语言所提供的功能更强,使用更广泛的一种循环语句。
1.for语句的一般格式
(1)第1种情况
for(表达式1;表达式2;表达式3)
语句;
(2)第2种情况
for(表达式1;表达式2;表达式3)
{
语句块;
}
2.for语句的注意事项
(1)各表达式之间分号不能省略
(2)表达式1与表达式2与表达式3均可省略,一般是不省略的。
①当表达式1省略时,相当于省去了为循环变量赋初值,此时应在for语句之前给循环变量赋初值
②当表达式2省略时,表示不判断循环条件,也就是认为表达式2始终为真, 这时应在循环体内设法结束循环,否则将成为死循环
③当表达式3省略时,即省去修改循环变量的值,但此时应在循环体内设法结束循环
(3)虽然说表达式可以省略,但是在使用for时,还是要正常使用的,也就是该有的都有。
三、for的逻辑思维过程
for语句和while语句一样,它的思想是在做循环之前,也是先有一个初值表达式1,然后判断条件表达式2是否成立,如果成立就执行{}里的语句然后跳转到表达式3,表达式3再跳转到表达式2,再次判断表达式2,如若成立再次,执行{}里的语句语句然后跳转到表达式3,表达式3再跳转到表达式2,如果成立就再重复执行,如果不成立就退出循环。
for的流程图走向和while语句一模一样,但是for的思维过程,可以直接先分析从第一次开始执行,执行条件是什么,步长是多少,然后执行的语句是什么,套用for的结构即可。更多相关内容 -
C语言编程技术实践-2020版、C语言编程技术实践 while和do while循环结构、while语句 while语句.pptx
2020-10-14 20:32:54while语句主讲人李刚目录1while语句实例演示2while语句格式及流程图3while语句的简单应用1while语句实例演示1. while语句实例演示实例介绍2 while语句格式及流程图2. while语句格式及流程图while语句的格式while... -
c代码-分别应用while语句、do-while语句和for语句,求出100以内所有奇数的和。
2021-07-16 12:50:04c代码-分别应用while语句、do-while语句和for语句,求出100以内所有奇数的和。 -
c代码-9. 功能:用while语句计算1—n中的奇数之和及偶数之和。
2021-07-14 19:26:41c代码-9. 功能:用while语句计算1—n中的奇数之和及偶数之和。 -
javascript while语句和do while语句的区别分析
2021-01-21 13:15:35while语句: var i = 1; while(i<10) { [removed](i); i++; } [/code] do while语句: [code] var i = 1; do { [removed](i); i++; }while(i<10); 从上边例子中我们来分析它们的两点不同: 1.因为... -
Dowhile语句
2017-07-17 09:15:22dowhile语句 -
07_Do-While语句_ExcelVBA其实很简单视频导读
2018-05-26 15:42:3407_Do-While语句_ExcelVBA其实很简单视频导读.07_Do-While语句_ExcelVBA其实很简单视频导读 -
python入门之语句(if语句、while语句、for语句)
2020-12-24 11:25:23python入门之语句,包括if语句、while语句、for语句,供python初学者参考。 //if语句例子 name = 'peirong'; if name == 'peirong': print 'this is peirong'; elif name== 'maojun': print 'this is maojun'; ... -
Python 中while语句
2021-01-20 03:22:19While语句的简易使用方法 作者:爱吃肉的小花生 首先声明:写这些只是方便做着自己记忆和理解,如果能帮助到大家那当然更好不过 while语句的框架: while 条件: #注意一定不要忘记有冒号哦 循环体 …… 如何停止... -
Java编程_循环语句(while语句、do-while语句和for语句)
2019-02-25 20:42:58循环语句 循环语句在程序设计中用来描述有规则重复的流程。在实际的程序中,存在很多需要重复执行的流程,为了简化这些重复的执行流程,在程序设计语言中新增了该类语句。 在学习循环语句时,最重要的就是发现...循环语句
循环语句在程序设计中用来描述有规则重复的流程。在实际的程序中,存在很多需要重复执行的流程,为了简化这些重复的执行流程,在程序设计语言中新增了该类语句。
在学习循环语句时,最重要的就是发现流程的规律,然后再用程序设计语言将该规律描述出来,从来实现程序要求的流程。
循环语句是流程控制中最复杂,也是最有用、最难掌握的语句,在最初接触时,首先要熟悉基本的语法,然后需要能够快速观察出流程的规律,这个观察能力需要依靠大量的阅读和编写程序进行培养,这就是基本的逻辑思维,然后将该规律描述出来即可。所以在学习循环语句时,学习语法只是基本的内容,更多的是培养自己观察规律的能力,这个才是真正学习循环语句时的难点,也是重点。
本节主要讲述循环语句的三种语法格式:while语句、do-while语句和for语句。
1、 while语句
while关键字的中文意思是“当……的时候”,也就是当条件成立时循环执行对应的代码。while语句是循环语句中基本的结构,语法格式比较简单。
while语句语法格式:
while(循环条件)
循环体;
为了结构清楚,并且使循环体部分可以书写多行代码,一般把循环体处理成代码块,则语法格式变为:
while(循环条件){
循环体;
}
语法说明:和if语句类似,如果不是用代码块的结构,则只有while后面的第一个语句是循环体语句。在该语法中,要求循环条件的类型为boolean类型,指循环成立的条件,循环体部分则是需要重复执行的代码。
执行流程:在执行while语句时,首先判断循环条件,如果循环条件为false,则直接执行while语句后续的代码,如果循环条件为true,则执行循环体代码,然后再判断循环条件,一直到循环条件不成立为止。
下面结合具体的示例来演示一下while语句的基本使用。首先我们来实现一个无限循环,也称死循环,具体代码如下:
while(true){
System.out.println(‘a’);
}
下面讲解一下该while语句的执行顺序,首先判断while语句的循环条件,条件成立,则执行循环体的代码,输出字符a,然后再判别循环条件,条件成立,继续执行循环体代码,输出a,再判断循环条件……,依次类推,因为循环条件一直成立,所以该程序的功能是一直输出a,永不停止。
说明:在控制台下执行死循环的程序,可以按Ctrl+C结束循环,在Eclipse中运行死循环的程序,可以选择执行窗口中的红色按钮“Terminate”结束程序。
下面是使用while语句输出0-9这10个数字,程序实现的原理是使用一个变量代表0-9之间的数字,每次输出该变量的值,每次对该变量的值加1.变量的值从0开始,只要小于数字10就执行该循环。具体的示例代码如下:
int i = 0;
while(i < 10){
System.out.println(i); //输出变量的值
i++; //变量的值增加1
}
其执行流程为:
1、 执行int I = 0;
2、 判断i<10是否成立,如果不成立则结束,否则执行下一步
3、 输出变量i的值
4、 i的值增加1
5、 跳转到步骤2继续执行
需要注意的是,首先while语句中的条件是循环成立的条件,也就是该条件成立则继续循环,所以在书写时注意。另外,内部代码的书写有顺序,同样是上面的代码,如果调整内部代码的顺序,如下所示:
int i = 0;
while(i < 10){
i++; //变量的值增加1
System.out.println(i); //输出变量的值
}
则程序的执行结果将变为输出数字1-10.所以在循环语句中,代码之间的顺序也影响整个程序的逻辑。
下面是用循环实现一个简单的数学逻辑,求1-10这10个数字的和。程序的原理是这样:声明一个变量i,从1变化到10,在声明一个变量sum,每次和i的值相加以后赋值给自身,下次再使用sum是变化以后的i相加,循环结束以后,得到的结果就是数字1-10之间所有数字的和。
示例代码如下:
int i = 1; //循环变量
int sum = 0; //数字和
while(i <= 10){
sum += i; //和当前的i值相加
i++; //变量i增加1
}
这样,第一次循环是把和1相加的结果赋值给sum,然后再使用sum的值和2相加再赋值给sum,依次类推,则得到1-10之间所有变量的和。
在使用循环语句时,发现规律需要的时间比编写和调试代码需要的时间多得多,所以要善于发现规律,善于思考。
2 、do-while语句
do-while语句由关键字do和while组成,是循环语句中最典型的“先循环再判断”的流程控制结构,这个和其它2个循环语句都不相同。
do-while语句的语法格式为:
do{
循环体;
}while(循环条件);
语法说明:在do-while语句中,循环体部分是重复执行的代码部分,循环条件指循环成立的条件,要求循环条件是boolean类型,值为true时循环执行,否则循环结束,最后整个语句以分号结束。
执行流程:当执行到do-while语句时,首先执行循环体,然后再判断循环条件,如果循环条件不成立,则循环结束,如果循环条件成立,则继续执行循环体,循环体执行完成以后再判断循环条件,依次类推。
实现和while语句实现的类似的示例,则死循环的示例代码为:
do{
System.out.println(‘a’);
}while(true);实现输出0-9这10个数字的循环为:
int i = 0;
do{
System.out.println(i); //输出变量的值
i++; //变量增加1
}while(i < 10);
实现求1-10这10个数字的和的代码为:
int i = 1;
int sum = 0;
do{
sum += i; //求和
i++; //变量增加1
}while(i < 10);
System.out.println(sum); //输出和
同理,实现求5的阶乘的代码类似,在数学上5的阶乘指1×2×3×4×5,数学上规定0的阶乘等于1,在实际计算时,阶乘的值增加的非常快,所以需要注意结果不能溢出。其具体代码为:
int i = 1;
int result = 1;
do{
result *= i;
i++;
}while(i <= 5);
System.out.println(result);
在实际的程序中,do-while的优势在于实现那些先循环再判断的逻辑,这个可以在一定程度上减少代码的重复,但是总体来说,do-while语句使用的频率没有其他的循环语句高
3 、for语句
for关键字的意思是“当…的时候”,是实际开发中比较常用的循环语句,其语法格式相对于前面的循环语句来说稍显复杂,但是在熟悉以后,将会发现其语法安排的比较条理,把循环控制和循环体很清晰的分开。
for语句的语法格式为:
for(初始化语句;循环条件;迭代语句){
循环体;
}
语法说明:
1、 和其它流程控制语句一样,语句中的大括号不是语法必须的,但是为了结构清楚以及在循环体部分可以书写多行代码,一般使用大括号。
2、 初始化语句作用是在循环开始以前执行,一般书写变量初始化的代码,例如循环变量的声明、赋值等。该语句可以为空。
3、 循环条件是循环成立的条件,要求必须为boolean类型,如果该条件为空,则默认为true,即条件成立。
4、 迭代语句是指循环变量变化的语句,一般书写i++、i—这样的结构,当然,该语句也可以为空5、 循环体指循环重复执行的功能代码。
执行流程:
1、 执行初始化语句
2、 判断循环条件,如果循环条件为false,则结束循环,否则执行下一步
3、 执行循环体
4、 执行迭代语句
5、 跳转到步骤2重复执行需要注意的是:for语句中的各个语句都可以为空,初始化语句在for语句执行时执行且只执行一次。
依据for语句的语法格式,则最简单的for语句是如下格式:for(;;);由于循环条件为空时,默认为true,则循环条件恒成立,该循环的循环体即最后的一个分号,这样的语句称作空语句,则该循环是一个死循环,循环体是空语句。
在实际书写代码时,一般把循环控制部分都写在for语句的小括号内部,而循环体只书写和逻辑相关的代码,这种结构使逻辑显得很清晰。
使用for语句输出的0-9之间数字的代码如下:
for(int i = 0;i < 10;i++){
System.out.println(i);
}
则该语句的执行流程为:
1、 执行int i = 0;
2、 判断i<10,如果条件不成立则结束,否则继续执行下一步
3、 执行System.out.println(i);
4、 执行i++
5、 跳转到步骤2继续执行类似的示例代码,实现求1-100之间数字的和,代码如下:
int sum = 0;
for(int i = 1;
i <= 100;i++){
sum +=i;
}
System.out.println(sum);
这些是一些基本的for语句的使用,在通常情况下,for语句和while语句之间可以实现很简单的转换,例如下面是一个使用for语句书写的while格式的代码:
int i = 0;for(;i < 10;){
System.out.println(i);
i++;
}关于for语句的深入使用请参看后续的综合示例部分的讲解。
小结
这里介绍了基本的循环控制语句的语法格式,在程序设计时,必须理解每种语句的语法格式和对应的特点,才能在实际使用时依据自己的逻辑进行灵活运用。
和前面的条件语句一样,在实际使用时,循环控制语句之间也可以进行相互的嵌套来解决复杂的逻辑,在语法上对于嵌套的层次没有限制。
while语句和for语句在循环语句中属于“先判断再循环”的结构,而do-while语句属于“先循环再判断”的结构,所以从语法角度来看,do-while语句的循环体至少会执行一次,在实际使用时while语句和for语句之间可以进行很方便的替换。
-
while及do while语句
2019-07-16 21:48:39编写程序时,许多问题都要用到循环控制。循环结构也是结构化程序设计的基本结构之一,因此熟练地掌握循环结构是程序设计最基本的要求。While循环、do while循环、for循环语句,3...do while语句较while语句在执行和...编写程序时,许多问题都要用到循环控制。循环结构也是结构化程序设计的基本结构之一,因此熟练地掌握循环结构是程序设计最基本的要求。While循环、do while循环、for循环语句,3种循环语句在一般情况下可以相互转换
While 及dowhile语句
While语句和do while语句都是C语言中循环结构的一种实现方式。While语句实现当型循环结构;do while语句较while语句在执行和判断的顺序上有所不同
1.while语句
一般形式如下:
While(表达式)语句
其语义是当表达式的值为真(非0时),执行while语句中的内嵌语句。该语句的特点是先判断表达式,后执行语句。L流程图如下
While语句中的表达式一般是关系表达式或逻辑表达式,只要表达式的值为真(非0)即可继续循环
循环体中如果包含一条以上的语句,应该用大括号括起来,以复合语句的形式出现。如果不加大括号,则while语句的范围直到while后面的第一个分号处
在循环中应有使循环趋向于结束的语句,以避免死循环例子
编程计算s=1+1/2+1/3+…1/n
首先找规律,可以看到这样的式子,分子不变,分母加一,第一项是1,第二项是2,第三项是3,第n项是n
编程实现
从键盘中输入一个数n,求n!
整体加一个while循环
do while循环语句
一般形式如下
do
循环体语句
While(表达式)其语意是:
先执行一次指定的循环体语句,然后判别表达式,当表达式的值为真(非0)时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时循环结束。其特点是:先执行循环体,然后判断循环条件是否成立流程图
将第一个多项式求和用do while来实现一般情况下While 和 do while 语句处理一个问题得出的结果往往是相同的,但是两者终归是不一样的,在处理某些特定问题得出的结果也会有所不同,就拿求和的例子来说吧
求1到100的自然数和用while
用 do while
While循环一次也不执行
比如一个数加它自身
用while实现如下
用do while 语句编程
总结 while循环先判断再循环,do while 先执行循环体再判断,while可以一次都不执行,do while 循环至少执行一次循环
-
Java的while语句
2020-05-23 07:25:22循环是程序中的重要流程结构之一。 循环语句能够使程序代码重复执行,适用于...初始化语句(init statement): 一条或多条语句,这些语句用于完成一些初始化工 作,初始化语句在循环开始之前执行。 循环条件(te循环是程序中的重要流程结构之一。
循环语句能够使程序代码重复执行,适用于需要重复一段代码直到满足特定条件为止的情
况。
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体。当反复执行这个循环体时,需要在合适的时候把循环条件改为假,从而结束循环,否则循环将一直执行下去,形成死循环。
循环语句可能包含如下 4 个部分。
初始化语句(init statement): 一条或多条语句,这些语句用于完成一些初始化工
作,初始化语句在循环开始之前执行。
循环条件(test_expression):这是一个 boolean 表达式,这个表达式能决定是否
执行循环体。
循环体(body_statement):这个部分是循环的主体,如果循环条件允许,这个代码块将被重复执行。如果这个代码块只有一行语句,则这个代码块的花括号是可以省略的。
迭代语句(iteration_statement):这个部分在一次循环体执行结束后,对循环条
件求值之前执行,使通常用于控制循环条件中的变量,得循环在合适的时候结束。
while 语句
while 语句是 Java 最基本的循环语句,是一种先判断的循环结构,可以在一定条件下重复执行一段代码。该语句需要判断一个测试条件,如果该条件为真,则执行循环语句(循环语句可以是一条或多条),否则跳出循环。
while 循环语句的语法结构如下:
while(条件表达式) { 语句块; }
其中语句块中的代码可以是一条或者多条语句,而条件表达式是一个有效的 boolean 表达式,它决定了是否执行循环体。当条件表达式的值为 true 时,就执行大括号中的语块。执行完毕,再次检查表达式是否为 true,如果还为 true,则再次执行大括号中的代码,否则就跳出循环,执行 while 循环之后的代码。图 1 表示了 while 循环语句的执行流程。
图 1 while 循环语句执行流程图
例 1
使用 while 语句计算 10 的阶乘,其具体代码如下所示。
public static void main(String[] args) {
int i = 1;
int n = 1;
while(i <= 10) {
n=n*i;
i++;
}
System.out.println("10 的阶乘结果为:"+n);
}
在上述代码中,定义了两个变量 i 和 n,循环每执行一次 i 值就加 1,判断 i 的值是否小于等于 10,并利用 n=n*i 语句来实现阶乘。当 i 的值大于 10 之后,循环便不再执行并退出循环。
运行程序,执行的结果如下所示:
10 的阶乘结果为:3628800
do-while 语句
如你刚才所见,如果 while 循环一开始条件表达式就是假的,那么循环体就根本不被执行。然而,有时需要在开始时条件表达式即使是假的情况下,while 循环至少也要执行一次。换句话说,有时你需要在一次循环结束后再测试中止表达式,而不是在循环开始时。
Java 就提供了这样的循环:do-while 循环。do-while 循环语句也是 Java 中运用广泛的循环语句,它由循环条件和循环体组成,但它与 while 语句略有不同。do-while 循环语句的特点是先执行循环体,然后判断循环条件是否成立。
do-while 语句的语法格式如下:
do { 语句块; }while(条件表达式);
以上语句的执行过程是,首先执行一次循环操作,然后再判断 while 后面的条件表达式是
否为 true,如果循环条件满足,循环继续执行,否则退出循环。while 语句后必须以分号
表示循环结束,其运行流程如图 2 所示。
图 2 do-while 循环语句的执行流程
例 2
编写一个程序,计算 10 的阶乘。使用 do-while 循环的实现代码如下所示。
public static void main(String[] args) {
int number = 1,result = 1;
do {
result*=number;
number++;
}while(number <= 10);
System.out.print("10 阶乘结果是:"+result);
}
程序运行后输出结果如下:
10 阶乘结果是:3628800
while 和 do-while 的比较
while 循环和 do-while 循环的相同处是:都是循环结构,使用 while(循环条件) 表示循环条件,使用大括号将循环操作括起来。
while 循环和 do-while 循环的不同处如下:
语法不同:与 while 循环相比,do-while 循环将 while 关键字和循环条件放在后面
,而且前面多了 do 关键字,后面多了一个分号。
执行次序不同:while 循环先判断,再执行。do-while 循环先执行,再判断。
一开始循环条件就不满足的情况下,while 循环一次都不会执行,do-while 循环则
不管什么情况下都至少执行一次。
for 语句是应用最广泛、功能最强的一种循环语句。
大部分情况下,for 循环可以代替 while 循环、do while 循环。
for 语句是一种在程序执行前就要先判断条件表达式是否为真的循环语句。假如条件表达式的结果为假,那么它的循环语句根本不会执行。
for 语句通常使用在知道循环次数的循环中。
for 语句语法格式如下所示。
for(条件表达式 1;条件表达式 2;条件表达式 3) { 语句块; }
for 循环中 3 个条件表达式的含义如表 1 所示。
for 关键字后面括号中的 3 个条件表达式必须用“;”隔开。
for 循环中的这 3 部分以及大括号中使循环体必需的 4 个组成部分完美地结合在一起,简单明了。
for 循环语句执行的过程为:首先执行条件表达式 1 进行初始化,然后判断条件表达式 2的值是否为 true,如果为 true,则执行循环体语句块;否则直接退出循环。最后执行表达式 3,改变循环变量的值,至此完成一次循环。接下来进行下一次循环,直到条件表达式2 的值为 false,才结束循环,其运行流程如图 1 所示。
图 1 for 循环执行流程图
值得指出的是,for 循环的循环迭代语句并没有与循环体放在一起,因此即使在执行循环体时遇到 continue 语句结束本次循环,循环迭代语句也一样会得到执行。
for 循环和 while、do while 循环不一样:由于 while、do while 循环的循环迭代语句紧跟着循环体,因此如果循环体不能完全执行,如使用 continue 语句来结束本次循环,则循环迭代语句不会被执行。但 for 循环的循环迭代语句并没有与循环体放在一起,因此不管是否使用 continue 语句来结束本次循环,循环迭代语句一样会获得执行。
与前面循环类似的是,如果循环体只有一行语句,那么循环体的大括号可以省略。
例如,同样是计算 5 的阶乘,使用 for 循环的实现代码如下:
public static void main(String[] args) {
int result = 1;
for (int number = 1; number <= 5; number++) {
result *= number;
}
System.out.print("5 的阶乘结果是:" + result); // 输出"5 的阶乘结果是:120"
}
上述语句的含义可以理解为,将 number 变量的值从 1 开始,每次递增 1,直到大于 5 时终止循环。在循环过程中,将 number 的值与当前 result 的值进行相乘。
注意:for 语句中初始化、循环条件以及迭代部分都可以为空语句(但分号不能省略),三者均为空的时候,相当于一个无限循环。
例如,计算 1~100 所有奇数的和,使用这种方式的代码如下:
public static void main(String[] args) {
int result = 0;
int number = 1; // 相当于 for 语句的条件表达式 1
for (;;) {
if (number > 100)
break; // 相当于 for 语句的条件表达式 2
if (number % 2 != 0) // 如果不能整除 2,说明是奇数,则进行累加
result += number;
number++; // 相当于 for 语句的条件表达式 3
}
System.out.print("100 以内所有奇数和为: " + result);
}
for、do-while 和 while 的区别
它们的区别,如下表 2 所示。
例 2
分别用 for、do-while 和 while 求出 1-10 的和。
1)使用 for 循环
代码如下:
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i < 11; i++) {
sum = sum + i;
}
System.out.println(sum);
}
运行结果为 55。
2)使用 do-while 循环
代码如下:
public static void main(String[] args) {
int sum = 0;
int i = 1;
do {
sum = sum + i;
i++;
} while (i < 11);
System.out.println(sum);
}
运行结果为 55。
3)使用 while 循环
代码如下:
public static void main(String[] args) {
int sum = 0;
int i = 1;
while (i < 11) {
sum = sum + i;
i++;
}
System.out.println(sum);
}
运行结果为 55。
-
简单掌握C++编程中的while与do-while循环语句使用
2020-09-02 21:53:00主要介绍了C++编程中的while与do-while循环语句使用,区别就是while是先判断再执行,而do-while是先执行再判断,需要的朋友可以参考下 -
continue和break分别在while语句,for语句和do while语句中的运行
2020-10-30 18:26:15continue和break分别在while语句,for语句和do while语句中的运行 -
C语言 while语句的用法
2022-03-08 09:32:021.while语句 2.while流程图 3.break在while循环中的作用 4.continue在while循环中的作用 5.while循环的使用 1.while语句 关键字:while while语句创建了一个循环,重复执行直到测试表达式为假或0。 ... -
C语言 do while语句的用法
2022-03-17 10:49:522.do while语句 3.do while流程图 4.do while循环的使用 1.如何选择循环 如何选择使用哪一种循环?首先,确定是需要入口条件循环还是出口条件循环。通常,入口条件循环用得比较多,有几个原因。其一,一般... -
9. C 语言 -- 循环结构:while语句和 do … while语句
2018-10-19 19:17:45本文主要讲述 C 语言循环结构中的 while 和 do while 语句,并且介绍了 scanf, getchar 和 gets三种输入的使用方法及使用情况。 -
c++ 判断素数 (for语句 / while语句 / do while语句)
2020-03-12 15:36:38c++ 判断素数 (for语句 / while语句 / do while语句) 以判断1000到1100中的素数有哪些为例 1. 利用for语句实现素数的判断 #include "stdafx.h" #include<iostream> using namespace std; int _tmain(int ... -
Go语言模拟while语句实现无限循环的方法
2020-09-22 09:32:33主要介绍了Go语言模拟while语句实现无限循环的方法,实例分析了for语句模拟while语句的技巧,具有一定参考借鉴价值,需要的朋友可以参考下 -
MySQL循环语句之while循环测试
2020-12-15 03:06:38mysql 操作同样有循环语句操作,网上说有3中标准的循环方式: while 循环 、 loop 循环和repeat循环。还有一种非标准的循环: goto。 鉴于goto 语句的跳跃性会造成使用的的思维混乱,所以不建议使用。 这几个循环... -
C#中while循环语句用法实例详解
2020-09-04 01:43:45主要介绍了C#中while循环语句用法,以实例形式详细分析了while语句的用法,并对return,continue,break的区别做了进一步的分析,需要的朋友可以参考下 -
实验三:用fot语句、while语句、do-while语句以及递归的方法计算n的阶乘
2021-05-24 05:25:281.用for语句计算n的阶乘package ndejiecheng;public class LIN{public static wood main(String srgs[]){into n=7,i,sum=1;for(i=1;i<=7;i++)sum*=n--;...用while语句计算n的阶乘package ndejiec... -
Matlab中while语句使用
2020-12-07 21:14:26while语句是条件为 true 时重复执行的while循环。 一.语法 while expression statements end 提示 如果意外创建了一个无限循环(即永远不会自行结束的循环),请按下Ctrl+C停止执行循环。 如果条件... -
do-while语句
2020-09-01 17:54:38C语言定义了do-while语句,它的定义格式如下: do 循环语句; while(表达式); 该语句的执行流程如下: 步骤一:执行do关键字后面的循环语句; 步骤二:判断while小括号中的表达式,如果表达式的值为真,则继续... -
C语言中do while语句的一般形式是什么
2021-05-20 05:50:14C语言中do while语句的一般形式是什么发布时间:2020-07-07 13:54:36来源:亿速云阅读:136作者:清晨小编给大家分享一下C语言中do while语句的一般形式是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去... -
C语言 | do while语句
2021-04-02 12:09:57除了while语句以外,C语言还提供了do…while语句来实现循环。 一般形式 do 语句 while(表达式) 其中语句就是循环体,先执行一次指定的循环语句,然后判别表达式,当表达式的值为非零(真)时,返回重新执行循环... -
while语句体中出现switch,break语句是执行switch还是while?
2021-03-16 10:29:23JAVA学习_循环取名前言一、循环中while语句体中出现switch,break语句是执行switch的功能(选择结束),还是执行while的功能(结束循环)?二、问题回答1.效果2.改进方法总结 该笔记是观看java学习视频中得出的知识...