循环结构(for、while、do-while)

For循环结构的使用
一、循环结构的四个要素
①初始化条件
②循环条件   ---->boolean类型
③循环体
④迭代条件
说明:通常情况下,循环结束都是由于②中循环条件返回了false
二、for循环结构
for(①;②;④)
{
    ③
}
执行过程:① - ② - ③ - ④ - ② - ③ - ④ - ... -  ②
练习一:编写程序从1-150,并在每行打印一个值,每个3倍数打印“foo”,每个5倍数打印“biz”,每个7倍数打印“baz”.
class ForOne 
{
	public static void main(String[] args) 
	{
		for(int i=1;i<=150;i++)
		{
			System.out.print(i+"  ");
			if(i%3==0)
				System.out.print("foo  ");
			if(i%5==0)
				System.out.print("biz  ");
			if(i%7==0)
				System.out.print("baz  ");
			System.out.println();

		}
	}
}

练习二:输入两个正整数,求其最大公约数和最小公倍数。

import java.util.Scanner;
class ForTwo 
{
	public static void main(String[] args) 
	{
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int min=(m<=n)?m:n;
		int max=(m>=n)?m:n;
		for(int i=min;i>=1;i--)
		{
			if(m%i==0&&n%i==0)
			{
				System.out.println("最大公约数为:"+i);
				break;
			}
		}
		for(int i=max;;i++)
		{
			if(i%m==0&&i%n==0)
			{
				System.out.println("最小公倍数为:"+i);
				break;
			}
		}
	}
}

While循环结构的使用

一、循环结构四要素

①初始化条件

②循环条件   ---->boolean类型

③循环体

④迭代条件

二、while循环的结构

while(②)

{

    ③;

    ④;

}

说明:1、迭代条件不能忘!!!!避免死循环。

          2、for循环和while循环可以相互转换。

do-while循环结构的使用

一、循环结构四要素

①初始化条件

②循环条件   ---->boolean类型

③循环体

④迭代条件

二、do-while循环的结构

do

{

    ③;

    ④;

}while(②)

执行过程:① -  ③ - ④ - ② - ③ - ④ - ... -  ②

说明:do-while循环至少会执行一次循环体

注:1、不在循环条件部分限制次数的结构:for(;;)或while(true)     

       2、结束循环的方式:①循环条件部分返回false

                                        ②在循环体中执行break

嵌套循环的使用

1、嵌套循环:将一个循环结构A申明在另一个循环结构B的循环体中

练习三、输出    

    *

   * *

  * * *

 * * * *

* * * * *

 * * * *

  * * *

   * *

    *

import java.util.Scanner;
class ForThree 
{
	public static void main(String[] args) 
	{
		Scanner scan=new Scanner(System.in);
		int num=scan.nextInt();
		for(int i=1;i<=num;i++)
		{
			for(int j=num-i;j>0;j--)
			{
				System.out.print(" ");
			}
			for(int z=i;z>0;z--)
			{
				System.out.print("* ");
			}
			System.out.println( );
		}
		for(int i=num-1;i>0;i--)
		{
			for(int j=num-i;j>0;j--)
			{
				System.out.print(" ");
			}
			for(int z=i;z>0;z--)
			{
				System.out.print("* ");
			}
			System.out.println( );
		}
	}
}

练习四、输出1~100内所有质数

class ForFour 
{
	public static void main(String[] args) 
	{
		boolean flag=true;
		long start=System.currentTimeMillis();
		for(int i=2;i<=100;i++)
		{
			for(int j=2;j<Math.sqrt(i);j++)//优化二:对本身是质数的自然数是有效的。
			//for(int j=2;j<i;j++)
			{
				if(i%j==0)
				{
					flag=false;
					break;//优化1:只对本身非质数的自然数是有效的
				}
			}
			if(flag==true)
			{
				System.out.println(i);	
			}
			flag=true;
		}
		long end=System.currentTimeMillis();
		System.out.println("所花费的时间"+(end-start));
	}
}

特殊关键字的使用

                    使用范围                    循环中使用的作用                

break:        switch-case                

                     循环结构中                    结束当前循环

continue:    循环结构中                    结束当次循环

相同点:关键字后面不能声明执行语句

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值