龙空技术网

Java循环语句

丷何以笙箫默丷 42

前言:

而今大家对“c语言阶乘求和代码”大致比较着重,我们都需要分析一些“c语言阶乘求和代码”的相关内容。那么小编也在网摘上搜集了一些关于“c语言阶乘求和代码””的相关文章,希望我们能喜欢,我们快快来了解一下吧!

1、while循环基本语法结构

while(条件表达式) {	//语句块;}
执行过程

符合括号中的条件表达式,循环继续执行,直到不符合条件表达式,退出循环,注意使用过程中不能出现无出口的死循环

特点

先判断条件表达式,再执行循环的语句块,循环可能一次都不执行。

经典示例

计算1到100的所有整数和

public class Test01 {	public static void main(String[] args) {		int i = 1;		int num = 0;		while(i<=100) {			num = num + i;			i ++;		}		System.out.println(num);	}}//控制台输出:5050

分析:

定义一个变量i,用于表示1到100的整数,定义一个num,用于计算总和,当运行到while时,判断i是否小于等于100,如果小于100,则将每个数的总和加到num中,完成后i自增1,直到i等于101时,退出循环。

2、do while循环基本语法结构

do {	循环语句}while(循环条件);
执行过程

先执行do语句块中的循环操作,再去判断是否符合while中的循环条件,如果符合循环条件,则循环继续,如果不符合循环条件,则退出循环

特点

先执行循环操作,再判断循环条件是否符合,循环至少会执行一次

经典示例

1、逆序输出5~1

public class Test01 {	public static void main(String[] args) {		int i = 5;		do {			System.out.println(i);			i --;		}while(i >= 1);	}}//控制台输出:5 4 3 2 1

分析:

定义一个变量i,程序运行到do时,先输出变量i,然后将变量i自减1,再去判断循环条件,如果i大于等于1,则循环继续执行,如果循环条件不成立,则直到i==0,循环退出。

2、阶乘求和:1!+2!+ 3!+ ... +10!

 public class Test01 {	public static void main(String[] args) {		int i = 1;		int sum1 = 0;		do {			int j = 1;			int sum2 = 1;			while(j <= i) {				sum2 = sum2*j;				j ++ ;			}			sum1 = sum1 + sum2;			i++;		}while(i <= 10);		System.out.println(sum1);	}}//控制台输出:4037913

分析:

外层do while循环用于控制10个阶乘的累加,定义一个变量i,用于表示十个阶乘,定义sum1用于表示10个阶乘的和,比如i=1,则sum1=1!;i=2,则sum1=1!+2!;i=3,则sum1=1!+2!+3!...依次类推;

内层嵌套的while循环用于求每个阶乘,定义一个变量j用于记录每个阶乘需要相乘的数的个数,比如j=1,则sum2=1;j=2,则sum2 = 1*2;j=3,则sum2=1*2*3...,依次类推;j<=i,则进行求阶乘的操作,即当i=1时,j计算的是1的阶乘;i=2时,j计算的就是2的阶乘,依次类推,完成操作后自增1;

最后当计算完10个阶乘和后,退出循环。

3、for循环基本语法结构

for(初始化参数;判断循环条件;更新循环变量) {	循环体;}
执行过程

先初始化参数,然后判断循环条件,如果符合循环条件,则执行循环体,然后更新循环变量,再去判断循环条件,如果循环条件符合,则继续执行循环体,之后更新循环变量,如果循环条件不符合,则退出循环。

特点

整个循环中,初始化参数只会执行一次。循环中可以使用continue关键字,用于跳过当次循环,继续下次循环。

for循环的应用范围最大,平时使用也是最多的。

public class Test01 {	public static void main(String[] args) {		for(int i=0;i<=3;i++) {			if(2==i) {				continue;			}			System.out.println(i);		}	}}//控制台输出: 0 1 3
经典示例

输出10个斐波那契数列:1、1、2、3、5、8、13 、21、34、55,从第三个数开始,该数是前面两个数的和

public class Test01 {	public static void main(String[] args) {		int i1 = 1;		int i2 = 1;		int printOut = 0;		System.out.println(i1);		System.out.println(i2);		for(int i=1;i<=8;i++) {			printOut = i1 + i2;			System.out.println(printOut);			i1 = i2;			i2 = printOut;		}	}}//控制台输出:1 1 2 3 5 8 13 21 34 55

分析:

因为前两个数固定为1,所以可以直接定义以及输出,要输出10个数,所以循环8次,从i=1开始循环,到i<=8循环结束,正好循环8次,定义一个printOut的变量用于计算前两个数之和,每次一次循环,先计算前两数之和,并在控制台输出,然后将i2的值赋值给i1,然后将计算出来的和(即后面的那个数)赋值给i2,这样每次循环时计算的i1 + i2实际都是不一样的值,比如i=1时,计算的是1+1,此时再去赋值,则i1变成了1,i2变成了2,;当i=2时,i1为2,i2为3,依次类推。

标签: #c语言阶乘求和代码 #java中的while语句 #java跳出当前循环的语句