一、循环语法while
先判断再执行
while(逻辑){
//循环体
}
上课案例
//求 1+2+3+4+5....+100
int sum = 0;
int i = 1;
while (i<=100) {
sum+=i; //sum = sum + I;
I++;
}
System.out.println("总和是="+sum);
课堂练习
课堂作业 从控制台打印如下图形
image.png
答案
int i = 1;
while (i<= 6 ) {
int j = I;
while (j > 0) {
System.out.print("*");
j--;
}
System.out.println("");
I++;
}
上课练习二
打印下面图案
image.png
int i = 1;
while (i<=4) { //外层循环控制行
//内层循环1 begin 控制空格个数
int k = 8 - i * 2;
while (k>0) {
System.out.print(" ");
k--;
}
//内层循环1 begin 控制空格个数
//内层循环2 begin 控制*个数
int j = i * 2 -1;
while (j>0) {
System.out.print("* ");
j--;
}
//内层循环2 end 控制*个数
System.out.println(""); //换行
I++;
}
二、循环语法do...while
先执行再判断
do{
//循环体
}while(逻辑);
三、for循环
for(表达式1;表达式2;表达试3){
//循环体 表达试4
}
执行顺序
作业一:
用while打印99乘法表。
public class HomeWork01 {
public static void main(String[] args) {
int i = 1;
while(i<=9) {
int j = 1;
while(j<=i){
System.out.print(j+"x"+i+"="+(i*j)+"\t");
j++;
}
System.out.println("");
I++;
}
}
}
效果如下:
image.png
作业二:
用while打印下面图案
image.png
public class HomeWork02 {
public static void main(String[] args) {
int i =1;
int flag = 1;
while(flag<=7) {
//空格
int k = 8-i*2;
while(k>0) {
System.out.print(" ");
k--;
}
//小星星个数
int j = i*2-1;
while(j>0) {
System.out.print("* ");
j--;
}
System.out.println("");//换行
if (flag >= 4) {
I--;
}else {
I++;
}
flag ++;
}
}
}
作业3
用while循环把下面图型打印出来。
作业3
答案:
package com.lianwei;
public class HomeWork03 {
public static void main(String[] args) {
int line = 1; //控制行数的变量
int i = 1; // 控制打印多少个小星星
while(line <=10) {
int j = I;
while(j>0) {
System.out.print("*");
j--;
}
System.out.println("");
if (line <5) {
I++;
}else if(line > 5) {
I--;
}
line ++;
}
}
}
作业4
用while循环把下在图型打印出来
image.png
答案
package com.lianwei;
public class HomeWork04 {
public static void main(String[] args) {
int line = 1; //控制行
int i = 1; //控制打印变量
while(line <=7) { //1打印所有行
// 2前面的空格 开始
int k1 = 8 -i*2;
while(k1>0) {
System.out.print(" ");
k1--;
}
// 2前面的空格 结束
// 3打印前面小星星
System.out.print("*");
// 5 计算中间的空格 开始
int k2 = 0;
if (line == 1 || line==7) {
k2 = 0;
}else { // 3 7 11
k2 = i * 4 - 5; //
}
while(k2>0) {
System.out.print(" ");
k2--;
}
// 5 计算中间的空格 结束
// 4打印后面的小星星 开始
if (line == 1 || line==7) {
}else
System.out.print("*");
// 4打印后面的小星星 结束
System.out.println("");
if (line < 4) {
i++;
}else {
i--;
}
line++;
}
System.out.println("-----");
}
}
作业5
用while循环打印下面图案
image.png