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.结账时,根据折扣(八折)计算应付金额,输入实付金额,计算找零。
import java.util.Scanner; public class Test03 { public static void main(String[] args) {
//打印菜单
System.out.println("MyShopping管理系统>购物结算\n");
System.out.println("***********************************************");
System.out.println("请选择购买的商品编号:");
System.out.println("1.T恤\t2.网球鞋\t3.网球拍");
System.out.println("***********************************************");
//从键盘接收
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
//初始化商品信息
String name = " ";//商品名称
double price = 0;//商品价格
double pay = 0;//应付金额
double Pay = 0;//购物总额 //while循环
String conti = "y";
while(conti.equals("y")){
System.out.print("请输入商品编号:");
int id = input.nextInt();
switch(id){
case 1:
name = "T恤";
price = 245;
break;
case 2:
name = "网球鞋";
price = 570;
break;
case 3:
name = "网球拍";
price = 320;
break;
default:
name = "--";
System.out.println("选择错误!");
break;
}//switch //购买数量
System.out.print("请输入购买数量:");
int num = input.nextInt();//数量
pay = price*num;
Pay = Pay+pay;
System.out.println(name+":¥"+price+"\t数量:"+num+"\t合计:¥"+pay); //询问是否继续循环
System.out.println("是否继续(y/n)?");
conti = input.next();
}
/*System.out.println("程序结束!");*/ //添加变量
double dis = 0.8;
System.out.println("\n折扣:"+dis);
System.out.println("应付金额:¥"+Pay);
System.out.print("实付金额:¥");
int money = input.nextInt();
double change = money-Pay;
System.out.println("找钱:¥"+change);
} }
常见错误
使用while循环结构解决问题时,经常会遇到下面的一些错误。
1、 没有为循环变量赋初值
2、 缺少{}
三、do-while循环
语法:
do{
//循环操作
}while(循环条件)
流程图:
举例:
int i = 1;
do{
System.out.println("好好学习!");
i++;
}while(i<=100);
★练习--升级菜单切换
import java.util.Scanner; public class Test04 { public static void main(String[] args) {
//打印菜单界面
System.out.println("欢迎使用MyShopping管理系统\n");
System.out.println("***********************************************");
System.out.println("\t\t1.客户信息管理");
System.out.println("\t\t2.购物结算");
System.out.println("\t\t3.真情回馈");
System.out.println("\t\t4.注销");
System.out.println("***********************************************"); //键盘接收数据
System.out.print("\n请选择,输入数字:");
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
int num;
//添加do-while循环
do{
num = input.nextInt();
//switch
switch(num){
case 1:
System.out.println("执行客户信息管理");
break;
case 2:
System.out.println("执行购物结算");
break;
case 3:
System.out.println("执行真情回馈");
break;
case 4:
System.out.println("执行注销");
break;
default:
System.out.print("输入错误,请重新输入数字:");
break; }//switch }while(num<1||num>4); System.out.println("\n程序结束"); } }
四、 本章总结:
1、循环结构由循环条件和循环操作构成。只要满足循环条件,循环操作就会反复执行。
2、使用循环结构解决问题的步骤:
分析循环条件和循环操作,
套用循环结构的语法写出代码,
检查循环能否退出。
3、编写循环结构代码时需注意:
循环变量的初值、循环操作中对循环变量值的改变和循环条件三者之间的关系;确保循环次数正确,不要出现“死循环”。
4、while循环结构的特点是:先判断,后执行;
do-while循环结构的特点是:先执行,再判断。
附:程序调试
最新文章
- 延时调用--deferred.js原码分析
- term2 配置
- java学习第17天(TreeSet HashSet)
- android动态调试samli代码(转)
- sql 主外键
- File.Create创建文件后,需要释放资源
- HDU 2502 月之数(简单递推)
- XtraForm默认皮肤的显示
- JS中的prototype属性
- (92) Web Crawling: How can I build a web crawler from scratch? - Quora
- 封装使用ViewHolder模式的Adapter组件,及用其快速实现聊天界面
- (转)个例子让你了解Java反射机制
- java的三大特性,封装,继承,多态
- .6-Vue源码之AST(2)
- ABP官方文档翻译 5.1 Web API控制器
- JDBC编程流程以及详细代码
- python多线程、多进程以及GIL
- springCloud feign使用/优化总结
- Borůvka algorithm
- Django 跨域问题