while循环语句

while 语句也称条件判断语句,它的循环方式是利用一个条件来控制是否要继续反复执行这个语句。
一般用于循环次数未知的情况
while循环语句格式:

 while (循环继续条件) {循环体语句;}

 while(循环继续条件){循环语句;步长;}

执行流程:

  1. 判断循环继续条件
  2. 为true,执行循环体语句
  3. 继续1->2,
  4. 直到循环继续条件为false,循环结束

流程图:

案例:

class Demo{public atatic void main(String[] args){int x = 1;    //定义int型变量x,并赋给初值int sum = 0;   //定义变量用于保存相加后的结果while(x <= 10){ //while循环语句,当变量满足条件表达式时执行循环体语句sum = sum+x;x++;}System.out.println("sum="+sum);}
}

注意事项:

  • 循环继续条件应该总是放在圆括号内。只有当循环体只包含一条语句或不包含语句时,循环体的花括号才可以省略。
  • 如果循环继续条件一直为true,则该循环为死循环while(true){}
  • 对涉及编写循环的程序而言,如果不知道如何立即编写循环,可以编写循环只执行一次的代码,然后规划如何在循环中重复执行这些代码。

do - while循环语句

do while循环语句的格式:

 do{语句}while(循环条件);

执行流程:

  1. 执行do里的语句
  2. 然后判断循环条件
  3. 如果为true,执行1->3;
  4. 如果为false,循环结束


案例:

class Demo{public static void main(String[] args){int a = 100;while(a==50){   //进入循环条件System.out.println("来了老弟");a--;}int b = 100;do{System.out.println("来了老姐");b--;}while(b==50)  //指定循环结束条件}
}

提示:
如果循环中的语句至少需要执行一次,建议使用do-while循环。
注意事项:
do-while循环至少执行一次
循环条件后的分号不能丢

循环结构while语句和for语句的区别

for循环语句和while循环语句可以等价转换
最大区别:
for循环针对一个范围判断进行操作
while循环适合判断次数不明确操作

注意:

在循环控制中,不要使用浮点值来比较值是否相等。因为浮点值都是些值的近似值,使用它们可能导致不精确的循环次数和不准确的结果

double item = 1; double sum = 0;
while(item !=0){sum+=item;item -=0.1;
}
System.out.println(sum);
/*
变量item从1开始,每执行一次循环体就减去0.1.当item变为0时循环应该终止。
但是,因为浮点数在算数上是近似的,所以不能确保item会变成真正的0.
从表明上看,这个循环似乎没问题,但实际上它是一个无限循环。
*/

习题:

1.剪刀石头布的游戏,让用户可以连续地玩这个游戏,直到用户或计算机赢对手两次以上为止。

package com.openlab.day05;import java.util.Random;
import java.util.Scanner;public class Class19 {public static void main(String[] args) {Scanner s = new Scanner(System.in);Random r = new Random();int usrCount = 0;int comCount = 0;String[] arr = {"石头","剪刀","布"};while(true) {System.out.println("请输入 石头0 剪刀1 布2 :");int usr = s.nextInt();int com = r.nextInt(3);if(usr<0||usr>2) {System.out.println("输入错误,请重新输入");continue;}if(usr==com) { //平局System.out.println("玩家是"+arr[usr]+" ; "+"电脑是"+arr[usr]+" ; "+"平局");}else if(usr-com==1||usr-com==-2) {  //玩家赢System.out.println("玩家是"+arr[usr]+" ; "+"电脑是"+arr[usr]+" ; "+"玩家赢");usrCount++;}else {//电脑赢System.out.println("玩家是"+arr[usr]+" ; "+"电脑是"+arr[usr]+" ; "+"电脑赢");comCount++;}if(usrCount==2||comCount==2) {break;}}if(usrCount==2) {System.out.println("最终,玩家赢");}else{System.out.println("最终,电脑赢");}}
}

2.编写程序,读入一个整数,然后以升序显示它的所有最小因子。例如,若输入的整数是120,那么输出就应该是:2,2,2,3,5.

package com.openlab.day05;import java.util.Scanner;public class Class14 {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("请输入一个数字");int number = s.nextInt();while(true) {boolean flag = true;for(int i = 2; i < number; i++) {if(number%i==0) {System.out.print(i);flag=false;number = number/i;break;}}if(flag) {System.out.print(number);break;}}}
}

循环结构:while和do...while循环语句相关推荐

  1. c语言中循环结构的作用,C语言循环结构知识点

    C语言循环结构知识点 引导语:循环结构可以减少源程序重复书写的工作量,用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构.以下是百分网小编分享给大家的C语言循环结构知识点,欢迎 ...

  2. c语言 循环结构 ppt,C语言中 循环结构.ppt

    <C语言中 循环结构.ppt>由会员分享,可在线阅读,更多相关<C语言中 循环结构.ppt(42页珍藏版)>请在皮匠网上搜索. 1.第五章循环控制结构,1,本章知识点:,whi ...

  3. c 语言程序的三种基本结构,C 语言程序的三种基本结构是____ A、顺序结构,选择结构,循环结构 B、递归结构,循环结构,转移结构...

    C 语言程序的三种基本结构是____ A.顺序结构,选择结构,循环结构 B.递归结构,循环结构,转移结构 更多相关问题 [填空题]移动电商,全称 ,是以 为载体的电商模式. [单选题]有关离子选择性电 ...

  4. 流程控制介绍,顺序结构、分支结构、循环结构、Promise对象、throw语句、break和continue关键字

    流程控制 流程控制:指代码的执行顺序,有三种方式:顺序结构.分支结构.循环结构 顺序结构: 代码从上到下,从左到右的执行顺序. 分支语句: if语句.if-else语句.if-else if-else ...

  5. 08.15 javascript3 分支结构 条件语句 :单向分支 双向分支 嵌套分支 多项分支 循环结构 while dowhile for 跳转语句 其他语句...

    # 分支结构  条件语句 ### 单向分支          if (){              } ### 双向分支          if () {          } else {     ...

  6. python入门之控制结构-循环结构_Python 入门之控制结构 - 循环结构(一)

    第1关:While 循环与 break 语句 程序的第三大结构是循环结构.在此结构中,通过一个判断语句来循环执行一个代码块,直到判断语句为假时跳出循环.循环语句分为while循环.for循环.循环嵌套 ...

  7. python中循环结构分有,python常见循环结构有哪些

    1.for-in- 该格式在python中是最为常见的一种格式,使用极为广泛.格式:for 参数 in 循环体: pass 在上面的格式中,有很多内容可以作为循环体,比如元组.列表.字符串等等.只要能 ...

  8. 20130328java基础学习笔记-循环结构for以及for,while循环区别

    1.循环结构:for讲解 class ForDemo {     public static void main(String[] args)     {         /*         for ...

  9. Python程序控制结构(二)循环结构:for in遍历循环,while无限循环,循环+else

    Python程序控制结构(二)循环结构: 1. for in遍历循环 2. while无限循环 一.遍历循环 二.遍历循环的应用 遍历循环是使用for in保留字形成的一种循环,它能够对遍历结构中的每 ...

  10. c语言构成循环结构的是,C语言循环结构选择题

    计算机二级的资料 C语言循环结构选择题 1.在C语言中,下列说明正确的是 A) 不能使用 do-while构成的循环 B) do-while构成的循环必须用break才能退出 C) do-while构 ...

最新文章

  1. 计算机学win7画图,Win7系统自带画图工具如何打开?win7打开画图工具教程
  2. NoSQL介绍、memcached介绍、安装memcached、 查看memcached状态
  3. Spring mvc ViewResolver视图解析器实现机制
  4. python求斐波那契数列第n个数及前n项和_使用python求斐波那契数列中第n个数的值示例代码...
  5. C语言学习之求一个3X3的整型矩阵对角线元素之和。
  6. 数据类型转换为false的有哪些?
  7. C# 设置当前程序调用的dll文件以及其他文件的寻址路径
  8. Coolite Toolkit学习笔记一:AjaxEvent、AjaxMethod和Listeners
  9. 最好用的JQuery插件集合以及组合拳
  10. 企业架构-发布在线文档【企业架构框架-TOGAF v0.2.pdf】
  11. 《私募证券投资基金业绩报酬指引(征求意见稿)》
  12. 如何使用计算机计算平方面积,尺平方米换算计算器(面积单位换算器)
  13. 未来10年35项最值得你期待的技术(中)
  14. 力扣刷题 DAY_88 贪心
  15. pandas 随机抽样
  16. 2022 极术通讯-安谋科技迎来发展新机遇
  17. JavaScript交互式网页设计 • 【第3章 JavaScript浏览器对象模型】
  18. 罗马数字到底是怎么组成的(内容详细)
  19. 你是否了解工作流软件与OA之间的关系?
  20. mysql计算环比的方法(多种情况)

热门文章

  1. 指针变量与数组的关系及什么是指针数组
  2. 什么是函数指针 ? 什么是指针函数? int (*P)( ) 和int *p()有什么区别
  3. c语言实验报告总结通用版,C语言实训心得体会
  4. .bat脚本执行cmd命令
  5. python中的引号用法总结_Python中的引号用法总结
  6. mysql拼接单引号_sql语句的拼接单引号和双引号的问题
  7. 双引号在python中什么意思_Python中单引号和双引号的作用
  8. 转行学IT,能找到好工作吗?
  9. 33 | 解读TPU:设计和拆解一块ASIC芯片
  10. 国际物流、快递、空运、海运、FBA头程、专线分别都有什么不同