while循环


while(boolean条件){


循环体


//变更变量值,可以在某个条件下让boolean值为false,来终止循环,否则会造成死循环


}



打印出1-100之间所有的偶数
	从1累加到100,得到总和及平均值
	1-100的数中哪些是3和5的公倍数
	打印出所有的水仙花数(肯定是个3位数),比如123==1*1*1+2*2*2+3*3*3



/*
1、从打印图形开始
*
**
***
****
*****
******
*******
********
*********

*********
 ********
  *******
   ******
    *****
     ****
      ***
       **
        *

*********
*       *
*       *
*       *
*       *
*       *
*       *
*       *
*********

*********
**     **
* *   * *
*  * *  *
*   *   *
*  * *  *
* *   * *
**     **
*********

2、9*9的乘法口诀表
3、打印出所有的水仙花数(肯定是个3位数),比如:123==1*1*1+2*2*2+3*3*3,则就是水仙花数
4、从100到1,依次打印
*/
public class Diagram{
	public static void main(String [] args){
		
	    System.out.println("------------求水仙花数-------------------");
	   
	   int a,b,c;
	   int i=100;
	   while (i<=999)
	   {
			a=i/100;//求出百位
			b=(i/10)%10;//求出十位
			c=i%10;//求出个位
			
			if ( a*a*a+b*b*b+c*c*c ==i)
			{
				System.out.println (i +"是水仙花数");
				
			}
           i++;
	   }  
		  
              System.out.println();
	      System.out.println();
	      System.out.println("---------------输出100到1-------------------");
	    i=100;//重置i的值
	   while (i>=1)
	   {
		   System.out.print(i+"	");
		   //变量值变更,来满足循环结束的条件
	       i--;
	   
	   }
	   
	    System.out.println();
		System.out.println();
		System.out.println("---------------输出九九乘法口诀表-------------");
		i=1;int j;
		//重置i的值
		//声明一个变量j
		//外循环九次
		while(i<=9)
			
		{   
		    j=1;
			//每次执行外循环都将j的值重置为1
			while (j<=i)
			{
				System.out.print(j+"*"+i+"="+i*j);
				 System.out.print("	");
				 //变量值变更,判断是否满足内循环条件,满足继续执行,
				 j++;
			}
			//变量值变更,判断是否满足外循环条件,满足继续执行,
			i++;
			//换行
			System.out.println();
		}
		
		System.out.println();
		System.out.println();
		System.out.println("---------------输出正三角图形-------------");
		i=1;
		//重置i的值,i表示行数
		//声明一个变量j
		//外循环九次
		while(i<=9)
			//每次执行外循环都将j的值重置为1
		{   
		   //j表示每行的*个数
		    j=1;
			while (j<=i)
			{
				System.out.print("*");
				 //变量值变更,判断是否满足内循环条件,满足继续执行,
				 j++;
			}
			//变量值变更,判断是否满足外循环条件,满足继续执行,
			i++;
			System.out.println();
		}
		
		System.out.println();
		System.out.println();
		System.out.println("---------------输出下三角图形-------------");
		//重置变量i的值为1 
		i=1;
		//声明整型变量k
		int k ;
		//重置i的值,i表示行数
		while (i<=9)
		{
			//初始化变量k,k表示输出的空格个数
			k=1;
			while(i>k)
			{
				System.out.print(" ");
				k++;
			}
			//重置变量j,j表示输出的*个数
			j=1;
			while (j<=10-i)
			{
				System.out.print("*");
				j++;
			}
			//变量值变更,判断是否满足外循环条件,满足继续执行,
			i++;
			System.out.println();
		}
		
		
		System.out.println();
		System.out.println();
		System.out.println("---------------输出空心长方形-------------");
		//重置i的值为1
		i=1;
		while(i<=9)
		{
			//第一行和第九行直接输出**********
			if(i==1||i==9)
			{
				System.out.println("*********");
			}else
				//其余行数输出*       *
			{
				System.out.println("*       *");

			}
			//变量值变更,判断是否满足外循环条件,满足继续执行,
            i++;
		}
		
		System.out.println();
		System.out.println();
		System.out.println("---------------输出花纹长方形-------------");
		//重置i的值为1
		i=1;
		
		while(i<=9)
		{  
         //j表示列
        	 j=1;

			if(i==1||i==9)
			{
				System.out.println("*********");
			}else
			{
			 while(j<=9)
			 {//j==1或9或为正反对角线的时候输出*,否则输出空格
				 if(j==1||j==9 ||j==10-i||j==i)
				 {
					 System.out.print("*");
				 }
				 else
				 {
					 System.out.print(" ");
				 }
			 //变量值变更,判断是否满足内循环条件,满足继续执行,
			 j++;
			 }
			 System.out.println();
			}
			//变量值变更,判断是否满足外循环条件,满足继续执行,
			i++;
		}
		
	}
}

写的不对的地方,希望大家多多指教