Java循环结构之while和do-while循环

循环结构知识点

本章技能目标

 

1理解循环的含义

2会使用while循环

3会使用do-while循环

4会使用调试解决简单的程序错误

 

 

一、   循环的含义

循环就是重复的做……(Java程序中的循环结构有三种实现方式:while循环结构、do-while循环结构、for循环结构)

程序循环的特点:

1、        循环不是无休止进行的,满足一定条件的时候循环才会继续,称为“循环条件”;

2、        循环不满足的时候,循环退出;

3、        循环结构是反复进行相同的或者类似的一系列操作,称为“循环操作”。

 

二、   while循环

 

语法:

 

While(循环条件){

//循环操作

流程图:

 

举例:

Int i=1;

While(i<=100){

       System.out.println(“好好学习!”);

       I= i+1;

}

★练习--升级购物系统

  1.循环输入商品编号和购买数量,系统自动计算每种商品的价钱(单价*购买数量),并累加得到总金额。

  2.当用户输入‘n’时,表示需要结账,则退出循环结账。

  3.结账时,根据折扣(八折)计算应付金额,输入实付金额,计算找零。

 1 import java.util.Scanner;
 2 
 3 public class Test03 {
 4 
 5     public static void main(String[] args) {
 6         //打印菜单
 7         System.out.println("MyShopping管理系统>购物结算\n");
 8         System.out.println("***********************************************");
 9         System.out.println("请选择购买的商品编号:");
10         System.out.println("1.T恤\t2.网球鞋\t3.网球拍");
11         System.out.println("***********************************************");
12         //从键盘接收
13         @SuppressWarnings("resource")
14         Scanner input = new Scanner(System.in);
15         //初始化商品信息
16         String name = " ";//商品名称
17         double price = 0;//商品价格
18         double pay = 0;//应付金额
19         double Pay = 0;//购物总额
20         
21         //while循环
22         String conti = "y";
23         while(conti.equals("y")){
24             System.out.print("请输入商品编号:");
25             int id = input.nextInt();
26             switch(id){
27             case 1:
28                 name = "T恤";
29                 price = 245;
30                 break;
31             case 2:
32                 name = "网球鞋";
33                 price = 570;
34                 break;
35             case 3:
36                 name = "网球拍";
37                 price = 320;
38                 break;
39             default:
40                 name = "--";
41                 System.out.println("选择错误!");
42                 break;
43             }//switch
44             
45             //购买数量
46             System.out.print("请输入购买数量:");
47             int num = input.nextInt();//数量
48             pay = price*num;
49             Pay = Pay+pay;
50             System.out.println(name+":¥"+price+"\t数量:"+num+"\t合计:¥"+pay);
51             
52             //询问是否继续循环
53             System.out.println("是否继续(y/n)?");
54             conti = input.next();
55         }
56         /*System.out.println("程序结束!");*/
57         
58         //添加变量
59         double dis = 0.8;
60         System.out.println("\n折扣:"+dis);
61         System.out.println("应付金额:¥"+Pay);
62         System.out.print("实付金额:¥");
63         int money = input.nextInt();
64         double change = money-Pay;
65         System.out.println("找钱:¥"+change);
66     }
67 
68 }

 

   常见错误

使用while循环结构解决问题时,经常会遇到下面的一些错误。

1、        没有为循环变量赋初值

2、        缺少{}

 

三、do-while循环

 语法:

do{

//循环操作

}while(循环条件)

 

流程图:

 

 举例:

int i = 1;

do{

  System.out.println("好好学习!");

  i++;

}while(i<=100);

 

★练习--升级菜单切换

 

 1 import java.util.Scanner;
 2 
 3 public class Test04 {
 4     
 5     public static void main(String[] args) {
 6         //打印菜单界面
 7         System.out.println("欢迎使用MyShopping管理系统\n");
 8         System.out.println("***********************************************");
 9         System.out.println("\t\t1.客户信息管理");
10         System.out.println("\t\t2.购物结算");
11         System.out.println("\t\t3.真情回馈");
12         System.out.println("\t\t4.注销");
13         System.out.println("***********************************************");
14 
15         //键盘接收数据
16         System.out.print("\n请选择,输入数字:");
17         @SuppressWarnings("resource")
18         Scanner input = new Scanner(System.in);
19         int num;
20         //添加do-while循环
21         do{
22             num = input.nextInt();
23             //switch
24             switch(num){
25             case 1:
26                 System.out.println("执行客户信息管理");
27                 break;
28             case 2:
29                 System.out.println("执行购物结算");
30                 break;
31             case 3:
32                 System.out.println("执行真情回馈");
33                 break;
34             case 4:
35                 System.out.println("执行注销");
36                 break;
37             default:
38                 System.out.print("输入错误,请重新输入数字:");
39                 break;
40                 
41             }//switch
42             
43         }while(num<1||num>4);
44         
45         System.out.println("\n程序结束");
46 
47     }
48 
49 }

 

四、 本章总结:

  1、循环结构由循环条件和循环操作构成。只要满足循环条件,循环操作就会反复执行。

  2、使用循环结构解决问题的步骤:

    分析循环条件和循环操作,

    套用循环结构的语法写出代码,

    检查循环能否退出。

  3、编写循环结构代码时需注意:

    循环变量的初值、循环操作中对循环变量值的改变和循环条件三者之间的关系;确保循环次数正确,不要出现“死循环”。

  4、while循环结构的特点是:先判断,后执行;

    do-while循环结构的特点是:先执行,再判断。

 

附:程序调试

posted @ 2017-04-06 13:37  滕秋宇  阅读(6359)  评论(0编辑  收藏  举报