1.while循环结构

while ( 循环条件 ) {
        
       循环操作

}

练习(1)

计算100以内的偶数之和

package cn.loyer;
/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-11 14:40:37* @version 1.0.0* @description 100以内偶数和*/
public class Evennumber {/*** @description* @author Xunan* @date 2022-07-11 14:40:48* @param args* @return*/public static void main(String[] args) {int num = 0;int sum = 0;while (num <= 100){sum += num;num += 2;}System.out.println(sum);}
}

运行成功

练习(2)

计算培训学员人数,2012年培养学员25万人,每年增长25%。请问按此增长速度,到哪一年培训学员人数将达到100万人?

package cn.loyer;
/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-11 16:22:59* @version 1.0.0* @description 计算培训学员人数*/
public class Students {/*** @description 2012年培养学员25万人,每年增长25%。* 请问按此增长速度,到哪一年培训学员人数将达到100万人?* @author Xunan* @date 2022-07-11 16:23:12* @param args* @return*/public static void main(String[] args) {double num = 25;//初始为25Wdouble year = 2012;//初始为2012年while (num <= 100){//增加至100Wnum = num * 1.25;//每次增加25%year++;//年份每次加1}System.out.println(year);}
}

运行成功

练习(3)

查询商品价,格用户从控制台输入需要查询的商品编号,根据编号显示对应的商品价格。假设商品名称和商品价格:
     T 恤 ¥245.0,网球鞋 ¥570.0,网球拍¥320.0

package cn.loyer;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-11 15:11:46* @version 1.0.0* @description 查询商品价格*/
public class Price {/*** @description 用户从控制台输入需要查询的商品编号,根据编号显示对应的商品价格。假设商品名称和商品价格:*      T 恤 ¥245.0,网球鞋 ¥570.0,网球拍¥320.0* @author Xunan* @date 2022-07-11 15:11:55* @param args* @return*/public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("MyShopping购物管理系统>购物结算");System.out.println("********************************************");System.out.println("请选择购买的商品的编号:");System.out.println("1.T恤\t2.网球鞋\t网球拍");System.out.println("********************************************");String answer = "y";while ("y".equals(answer)){System.out.println("请输入商品编号:");int num = sc.nextInt();switch (num){case 1:System.out.println("T恤\t¥245.0");break;case 2:System.out.println("网球鞋\t¥570.0");break;case 3:System.out.println("网球拍\t¥320.0");break;default:System.out.println("请输入正确编号");break;}System.out.println("是否继续(y/n)");answer = sc.next();}System.out.println("程序结束!");}
}

运行成功

练习(4)

升级购物结算,循环输入商品编号和购买数量系统自动计算每种商品的价钱(单价X购买数量),并累加得到总金额。当用户输入“n”,表示需要结账,则退出循环开始结账。结账时,根据折扣计算应付金额,输入实付金额,计算找零。

package cn.loyer;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-11 16:31:00* @version 1.0.0* @description 升级购物结算*/
public class Shoping {/*** @description 循环输入商品编号和购买数量系统自动计算每种商品的价钱(单价X购买数量),并累加得到总金额。* 当用户输入“n”,表示需要结账,则退出循环开始结账。* 结账时,根据折扣计算应付金额,输入实付金额,计算找零* @author Xunan* @date 2022-07-11 16:31:15* @param args* @return*/public static void main(String[] args) {System.out.println("*****************************************");System.out.println("请选择购买的商品编号:");System.out.println("1.T恤\t2.网球鞋\t3.网球拍");System.out.println("*****************************************");Scanner sc = new Scanner(System.in);double chose = 245.0;//T恤单价double shose = 570.0;//网球鞋单价double tennis = 320.0;//网球拍单价double totalPrices = 0;//定义总价double commodity = 0;//定义单个商品总价int num = 0;//定义一个商品编号变量,初始值为0int goods = 0;//定义一个购买数量变量,初始值为0String answer = "y";//定义一个判断“y”while("y".equals(answer)) {System.out.println("请输入商品编号:");num = sc.nextInt();//定义商品编号System.out.println("请输入购买数量:");goods = sc.nextInt();//定义购买数量switch (num) {//计算购买商品的价格case 1:commodity = chose * goods;System.out.println("T恤\t" + commodity);break;case 2:commodity = shose * goods;System.out.println("网球鞋\t" + commodity);break;case 3:commodity = tennis * goods;System.out.println("网球拍\t" + commodity);break;}totalPrices = totalPrices + commodity;//进行多次的累加System.out.println("是否继续(y/n)");answer = sc.next();}System.out.println("折扣:0.8");double paymoney = 0;//定义一个应付金额变量,初始值为0paymoney = totalPrices * 0.8;//折扣后价钱System.out.println(paymoney);System.out.println("实付金额:");int money = sc.nextInt();System.out.println("找零:" + (money - paymoney));}
}

运行成功

2.do-while循环结构

do {

循环操作

} while ( 循环条件 );

比较while和do-while的区别:

初始情况不满足循环条件时,while循环一次都不会执行,do-while循环不管任何情况都至少执行一次。while是先判断后循环,do-while是先循环后判断。

练习(5)

温度对照表,输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为项,对照表中的条目不超过10条。转换关系:华氏温度 = 摄氏温度 * 9 / 5.0 + 32

package cn.loyer;
/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-11 17:32:46* @version 1.0.0* @description 温度对照表*/
public class Temperature {/*** @description 输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。* 转换关系:华氏温度 = 摄氏温度 * 9 / 5.0 + 32* @author Xunan* @date 2022-07-11 17:32:54* @param args* @return*/public static void main(String[] args) {System.out.println("摄氏温度\t\t华氏温度");double degreeCentigrade = 0;//定义一个摄氏度变量,初始值为0double fahrenheit = 0;//定义一个华氏度变量,初始值为0int count = 0;//定义一个增量,初始值为0do {fahrenheit = degreeCentigrade * 9 / 5.0 + 32;//摄氏度和华氏度的换算System.out.println(degreeCentigrade + "\t\t" + fahrenheit);degreeCentigrade = degreeCentigrade + 20;//摄氏度每次增加20count++;}while (count < 10);//增量不超过10}
}

运行成功

练习(6)
升级菜单切换,进入系统主菜单后,提示用户输入数字,然后根据选择进入相应的功能模块。
如果用户输入错误,则可以重复输入,直到输入正确,执行相应的操作后退出循环。

package cn.loyer;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-11 17:46:30* @version 1.0.0* @description 升级菜单切换*/
public class Menu {/*** @description 进入系统主菜单后,提示用户输入数字,然后根据选择进入相应的功能模块。* 如果用户输入错误,则可以重复输入,直到输入正确,执行相应的操作后退出循环。* @author Xunan* @date 2022-07-11 17:46:38* @param args* @return*/public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("欢迎使用MyShopping管理系统");System.out.println("*****************************************");System.out.println("1.客户信息管理");System.out.println("2.购物结算");System.out.println("3.真情回馈");System.out.println("4.注销");System.out.println("*****************************************");System.out.println("请选择输入数字:");int num = sc.nextInt();while (num >= 5){//判断System.out.println("输入有误,请重新输入数字");num = sc.nextInt();//重新输入}System.out.println("执行购物结算");System.out.println("程序结束");}
}

运行成功

3.for循环结构

for (   int i = 0 ;    i  < 100 ;     i++  ) {
         System.out.println("好好学习!");
}    

for循环中,每一个结构都不能少。

练习(7)

计算顾客比例,商场为了提高销售额,需要对顾客的年龄层次(30岁之上/30岁之下)进行调查(样本数为10),请计算这两个层次的顾客比例。

package cn.study;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-12 16:24:12* @version 1.0.0* @description 计算顾客比例*/
public class Proportion {/*** @description 商场为了提高销售额,需要对顾客的年龄层次(30岁之上/30岁之下)* 进行调查(样本数为10),请计算这两个层次的顾客比例* @author Xunan* @date 2022-07-12 16:24:45* @param args* @return*/public static void main(String[] args) {Scanner sc = new Scanner(System.in);int year = 0;//定义初始年龄double bigNum = 0;//定义30岁以上的年龄double littleNum = 0;//定义30岁以下的年龄for (int i = 1;i <= 10;i++){System.out.println("请输入第" + i + "位的顾客年龄:");year = sc.nextInt();if (year >= 30){bigNum++;//年龄大于30的情况}else {littleNum++;//年龄小于30的情况}}System.out.println("30岁以下的比例是:" + bigNum / 10);System.out.println("30岁以上的比例是:" + littleNum / 10);}
}

运行成功

练习(8)

输出加法表,输入10以内的任意一个整数,根据这个值输出加法表,假设输入值为6,程序运行效果图。

package cn.study;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-12 15:04:21* @version 1.0.0* @description 输出加法表*/
public class Addition {/*** @description 输入10以内的任意一个整数,根据这个值输出加法表,假设输入值为6,程序运行效果图。* @author Xunan* @date 2022-07-12 15:04:30* @param args* @return*/public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个值");int num = sc.nextInt();for (int i = 0;i <= num;i++){int sum = num - i;System.out.println(i + "+" + sum + "=" + num);}}
}

运行成功

3种循环结构的区别

区别1:语法

区别2:执行顺序 
while 循环:先判断,再执行
do-while循环:先执行,再判断
for循环:先判断,再执行

区别3:适用情况
循环次数确定的情况,通常选用for循环
循环次数不确定的情况,通常选用while或do-while循环

4.breakt跳转语句

while(…) {
     ……
     ……
     ……
     break;
     ……
     ……
     ……
}

break跳出整个循环。通常和循环中的条件语句一起使用。

练习(9)

需求说明
1~10之间的整数相加,得到累加值大于20的当前数。

package cn.study;import com.sun.xml.internal.ws.addressing.WsaActionUtil;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-12 15:36:36* @version 1.0.0* @description 跳转语句break*/
public class Sum {/*** @description 1~10之间的整数相加,得到累加值大于20的当前数。使用循环进行累加,从1到10* 判断累加值是否大于20* 如果大于20,则跳出循环,并打印当前值* @author Xunan* @date 2022-07-12 15:36:47* @param args* @return*/public static void main(String[] args){int sum = 0;for (int i = 0;i <= 10;i++){sum += i;if (sum > 20){break;}}System.out.println(sum);}
}

运行成功

 5.跳转语句continue

while(…) {

……
     ……
     ……
     continue;
     ……
     ……
}
继续下一次循环,通常与条件语句一起使用,加速循环。

对比break和continue

使用场合:
1.break常用于switch结构和循环结构中。
2.continue一般用于循环结构中。
作用(循环结构中):
1.break语句终止某个循环,程序跳转到循环块外的下一条语句。
2.continue跳出本次循环,进入下一次循环。

慎重使用:return:结束当前方法的执行并退出,返回到调用该方法的语句处。

练习(10)

循环录入会员信息,商场为了维护会员信息,需要将其信息录入系统中,具体要求如下:
循环录入三位会员的信息(会员号、会员生日、会员积分)。
判断会员号是否合法(四位整数)。
若会员号合法,则显示录入的信息,否则显示录入失败。

package cn.study;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-12 16:45:38* @version 1.0.0* @description 循环录入会员信息*/
public class Cycle {/*** @description 商场为了维护会员信息,需要将其信息录入系统中,具体要求如下:* 循环录入三位会员的信息(会员号、会员生日、会员积分)。* 判断会员号是否合法(四位整数)。* 若会员号合法,则显示录入的信息,否则显示录入失败。* @author Xunan* @date 2022-07-12 16:45:45* @param args* @return*/public static void main(String[] args) {System.out.println("Myshopping管理系统>客户信息管理>添加客户信息");Scanner sc = new Scanner(System.in);for (int i = 0;i < 3;i++){//3次循环System.out.println("请输入会员号(4位整数):");int num = sc.nextInt();if (1000 > num || num < 9999){//判断会员号是否为4位数System.out.println("请输入会员生日(月/日《使用两位整数表示》):");String birthday = sc.next();System.out.println("请输入会员积分:");int integral = sc.nextInt();System.out.println("您输入的会员信息是:" + num + "\t" + birthday + "\t" + integral);}else {System.out.println("请输入合法会员号");break;}}}
}

运行成功

练习(11)

验证用户登录信息,用户登录系统时需要输入用户名和密码,系统对用户输入的用户名和密码进行验证。验证次数最多三次,超过三次则程序结束。根据验证结果的不同(信息匹配/信息不匹配/三次都不匹配),执行不同的操作。

package cn.study;import java.util.Scanner;/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-12 16:43:25* @version 1.0.0* @description 验证用户登录信息*/
public class Validation {/*** @description 用户登录系统时需要输入用户名和密码,系统对用户输入的用户名和密码进行验证。* 验证次数最多三次,超过三次则程序结束。* 根据验证结果的不同(信息匹配/信息不匹配/三次都不匹配),执行不同的操作。* @author Xunan* @date 2022-07-12 16:43:36* @param args* @return*/public static void main(String[] args) {Scanner sc = new Scanner(System.in);for (int i = 0;i < 3;i++){System.out.println("请输入用户名:");String name = sc.next();System.out.println("请输入密码:");int password = sc.nextInt();if ("jim".equals(name) || "123456".equals(password)){//判断用户名错误和密码错误System.out.println("欢迎登录Myshopping系统!");break;}else {System.out.println("输入错误!您还有" + (2 - i) + "次机会!");}if ((2 - i) == 0){//三次输入错误System.out.println("对不起,您三次均输入错误!");}}}
}

运行成功

练习(12)

输出99乘法口诀表

package cn.study;
/*** @authorDesc 诸神在上,佑我程序,玄功护体,BUG皆去!* @author Xunan* @date 2022-07-12 17:55:37* @version 1.0.0* @description 乘法口诀*/
public class Multiplication {/*** @description 打印出乘法口诀* @author Xunan* @date 2022-07-12 17:55:47* @param args* @return*/public static void main(String[] args) {for (int i = 1;i <= 9;i++){for (int j = 1;j <= 9;j++){System.out.print(i + "*" + j + "=" + (i * j) + "\t");if (i == j){System.out.println();break;}}}}
}

运行成功

个人问题:使用三种循环的使用场合不太清楚,一般是想到哪个用哪个。

java学习第6天,今天是循环结构相关推荐

  1. 一起学习C语言:C语言循环结构(三)

    上一篇 <一起学习C语言:C语言循环结构(二)> 中,我们了解了while.do-while语法和continue语句的应用场景.本篇文章中,我们分析循环结构嵌套使用,并通过几个示例分析c ...

  2. 一起学习C语言:C语言循环结构(二)

    前言: 前一段时间发表的<["天才"必经之路]>文章非常热门,虽然我知道它会是一篇成功的文章,但,它的火爆程度还是超出了我的预期.前几日,我写了这个系列的第二篇文章,文 ...

  3. Java入门之顺序、选择、循环结构

    Java入门之顺序.选择.循环结构 顺序结构: package com.LynnStudy.scanner; import java.util.Scanner; /*** @Author hql* @ ...

  4. Java基础(三)选择和循环结构

    一.选择结构,条件判断 1.if 语句 一个 if 语句包含一个布尔表达式和一条或多条语句.如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码. 1 imp ...

  5. 一起学习C语言:C语言循环结构(一)

    上一章 <一起学习C语言:C语言基本语法> 系列内容中,我们了解了if语句.switch语句的使用方式以及不同运算符的优先级等内容.本章节,我们学习C语言循环结构用法. 章节预览: 1. ...

  6. GO学习笔记 - Go 只有一种循环结构—— for 循环。

    一,Go 只有一种循环结构-- for 循环. 官方教程:https://tour.go-zh.org/flowcontrol/1 Go 只有一种循环结构-- for 循环. 基本的 for 循环包含 ...

  7. Python学习:命令行运行,循环结构

    一.安装配置和运行方法 1.安装OpenCV 3.1: 假设安装目录为"C:\Python34" 2.配置环境变量: 方法一:直接配置:打开"控制面板",搜索& ...

  8. Java基本语法(14)--for循环结构

    循环结构:在某些条件满足的情况下,反复执行特定代码的功能. 基本格式: for (①初始化部分; ②循环条件部分; ④迭代部分){ ③循环体部分; } 如果①,④部分多条语句,语句之间用", ...

  9. linux设置程序循环,linux shell编程学习笔记(7)流程控制之循环结构

    2.1.for循环 1)遍历/列表式循环 --根据变量的不同取值,重复执行命令序列 格式: for  变量名  in 值列表 do 命令序列 done 示例:输出在线的主机IP #!/bin/bash ...

  10. (1)c语言学习总结之从关键字到循环结构

    一.关键字和标示符 1.关键字:c规定的有特殊含义的单词(也就是系统起的名字),全部是小写,有32个; 由关键字引出数据类型和流程类型 1.分类: (1)数据类型:整型用int标示,字符型用char表 ...

最新文章

  1. Java isfile()与exists()的区别
  2. 移动端手势库Hammer.js学习
  3. 初步学习Spring Aop使用之注解方式
  4. 四色原型图进行业务建模的思考
  5. dj鲜生-19-登陆功能-利用内置认证体系
  6. 李廷伟:可穿戴技术引领物联网创新新浪潮
  7. 【Caffe代码解析】SyncedMemory
  8. python中options类_python命令行参数解析OptionParser类用法实例
  9. 计算机系统硬盘内存主频,内存时序和频率_内存硬盘-中关村在线
  10. 45.更新一下scrapy爬取工商信息爬虫代码
  11. 2007年五一通过了驾驶证考试(5/7,5/8)
  12. 同步调用、异步调用、回调的简单理解
  13. java 动漫画图_初学画画怎么把动漫线条画好?
  14. 严重: The web application [] appears to have started a thread named [Thread-
  15. 3行代码爬取京东数据
  16. [HNOI2014]米特运输
  17. 我与《JavaScript高级程序设计》的相爱相杀----JavaScript摘记
  18. Arcgis融合相邻且某些属性相同的图斑且属性取面积最大的图斑操作流程
  19. css选择第一个标签,倒数第二个标签,最后一个标签总结
  20. php大作业关于中国美食,中国最火的15大美食

热门文章

  1. C#.NET 国密SM4加密解密 CBC ECB 2种模式
  2. Python写停车场收费系统
  3. PHP系列之集成Ajax实现登录验证
  4. java 如何杀线程,您如何杀死Java中的线程?
  5. 位/比特(bit)、字节(Byte)的理解
  6. android /system/lib/ so库解析
  7. 学习Excel的使用
  8. python打印a-z的字母
  9. 科学计算机 分数计算公式,Z分数(标准分数,Z-Score)公式与在线计算器_三贝计算网_23bei.com...
  10. jays+android耳机,享受HiFi音质 Jays推出新款入耳式耳塞