第五章 循环

5.2 while循环

  1.while循环的语法如下:

    while(循环继续条件){

    //循环体

    语句(组);

    }

  2.程序:提示用户为两个个位数相加的问题给出答案

 package com.chapter5;

 import java.util.Scanner;

 public class RepeatAdditionQuiz {

     /**
* 提示用户为两个个位数相加的问题给出答案
*/ public static void main(String[] args) { int number1=(int) (Math.random()*10);
int number2=(int) (Math.random()*10); Scanner input=new Scanner(System.in); System.out.println("请输入:"+number1+" + "+number2+" 的结果");
int answer=input.nextInt(); while(number1+number2!=answer){
System.out.println("答案错误,请重新输入 "+number1+" + "+number2+" 的结果");
answer=input.nextInt();
} System.out.println("正确答案是:"+answer); } }

  

  3.程序:猜数字

 package com.chapter5;

 import java.util.Scanner;

 public class GuessNumber {

     /**
* 猜数字
*/ public static void main(String[] args) { int number=(int) (Math.random()*101); Scanner input=new Scanner(System.in);
System.out.println("猜测的数字在0-100之间包含0和100"); int guess=-1;
while(guess!=number){
System.out.println("输入您猜测的数字");
guess=input.nextInt(); if(guess==number){
System.out.println("猜测正确!");
}else if(guess>number){
System.out.println("您猜测的数字大了!");
}else{
System.out.println("您猜测的数字小了!");
}
}
} }
5.3 do-while循环

  1.首先执行循环体,然后计算循环继续条件。如果计算结果为true,则重复执行循环体;如果为false,则终止do-while循环。

  2.程序:TestDoWhile

 package com.chapter5;

 import java.util.Scanner;

 public class TestDoWhile {

     public static void main(String[] args) {

         int data;
int sum=0; Scanner input=new Scanner(System.in); do{
System.out.print("输入一个整数(如果是0输入结束):");//Enter an integer(the input ends if it is 0)
data=input.nextInt();
sum+=data;
}while(data!=0); System.out.println("总和为:"+sum); } }
5.4 for循环

  1.语法:

  for(初始操作;循环继续条件;每次迭代后的操作){

  //循环体

  语句(组);

  }

5.5 采用哪种循环

  while循环和for循环都称为前测循环(pretest loop),因为继续条件是在循环体执行之前检测的,do-while循环被称为后测循环(posttest loop),因为循环条件是在循环体执行之后检测的。

5.6 嵌套循环

  1.程序:乘法表

 package com.chapter5;

 public class MultiplicationTable {

     /**
* 乘法表
*/ public static void main(String[] args) { System.out.println("Multiplication table");
System.out.print(" "); for(int i=1;i<=9;i++){
System.out.print(" "+i);
}
System.out.println("\n----------------------------------------");
for(int i=1;i<=9;i++){
System.out.print(i+"|");
for(int j=1;j<=9;j++){
System.out.printf("%4d",i*j);
}
System.out.println();
} } }
5.8 示例学习

  求最大公约数

 package com.chapter5;

 import java.util.Scanner;

 public class GreatestCommonDivisor {

     /**
* 求最大公约数
*/ public static void main(String[] args) { Scanner input=new Scanner(System.in); int gcd=1;//1是一个公约数,但不是最大公约数
int k=2; System.out.println("请输入第一个整数:");
int number1=input.nextInt();
System.out.println("请输入第二个整数:");
int number2=input.nextInt(); while(k<=number1 && k<=number2){
if(number1%k==0 && number2%k==0){
gcd=k;
}
k++;
}
System.out.println(number1+" 和 "+number2+" 的最大公约数为:"+gcd);
} }

Java语言程序设计(基础篇) 第五章 循环的更多相关文章

  1. Java语言程序设计(基础篇) 第七章 一维数组

    第七章 一维数组 7.2 数组的基础知识 1.一旦数组被创建,它的大小是固定的.使用一个数组引用变量,通过下标来访问数组中的元素. 2.数组是用来存储数据的集合,但是,通常我们会发现把数组看作一个存储 ...

  2. Java语言程序设计(基础篇) 第六章 方法

    第六章 方法 6.2 定义方法 1.方法的定义由方法名称.参数.返回值类型以及方法体组成. 2.定义在方法头中的变量称为形式参数(formal parameter)或者简称为形参(parameter) ...

  3. Java语言程序设计(基础篇) 第四章 数学函数、字符和字符串

    第四章 数学函数.字符和字符串 4.2 常用数学函数 方法分三类:三角函数方法(trigonometric method).指数函数方法(exponent method)和服务方法(service m ...

  4. Java语言程序设计(基础篇) 第三章 选择

    第三章 选择 3.8 计算身体质量指数 package com.chapter3; import java.util.Scanner; public class ComputeAndInterpret ...

  5. Java语言程序设计(基础篇)第一章

    第一章 计算机.程序和Java概述 1.1 引言 什么是程序设计呢? 程序设计就是创建(或者开发)软件,软件也称为程序. 1.2 什么是计算机 计算机是存储和处理数据的电子设备,计算机包括硬件(har ...

  6. 0031 Java学习笔记-梁勇著《Java语言程序设计-基础篇 第十版》英语单词

    第01章 计算机.程序和Java概述 CPU(Central Processing Unit) * 中央处理器 Control Unit * 控制单元 arithmetic/logic unit /ə ...

  7. Java语言程序设计(基础篇)第二章

    第二章 基本程序设计 2.2 编写简单的程序 1.变量名尽量选择描述性的名字(descriptive name). 2.实数(即带小数点的数字)在计算机中使用一种浮点的方法来表示.因此,实数也称为浮点 ...

  8. Java语言程序设计(基础篇) 第八章 多维数组

    第八章 多维数组 8.2 二维数组的基础知识 二维数组中的元素通过行和列的下标来访问. 8.2.1 声明二维数组变量并创建二维数组 下面是二维数组的语法: 数据类型[][] 数组名; int[][] ...

  9. Java语言程序设计-助教篇

    1. 给第一次上课(软件工程)的老师与助教 现代软件工程讲义 0 课程概述 给学生:看里面的第0个作业要求 2. 助教心得 美国视界(1):第一流的本科课堂该是什么样?(看里面的助教部分) 助教工作看 ...

随机推荐

  1. C#向Sql数据库插入控制

    string name = textBox1.Text; int age = Convert.ToInt32(textBox2.Text.Trim()); ? null : (int?)Convert ...

  2. [译]SQL Server分析服务的权限配置

    简介: 本文介绍如何配置SSAS数据库和cube相关维度的安全设置. 相对数据引擎来说,在Management Studio中配置分析服务的安全设置基本没什么区别.但是也会有一些限制,比如SSAS的权 ...

  3. ASP.NET4.5Web API及非同步程序开发系列(2)

    认识ASP.NET WEB API 他的前身为WCF WEB API用于协助WCF支持RestFul.现在集成进ASP.NET,正式更名为ASP.NET WEB API,ASP.NET Web API ...

  4. eventbus实时更新

    1.发送方 EventBus.getDefault().post(new FriendApprovalEvent()); 2.接收方 /** * 收到好友消息 * * @param event */ ...

  5. 微信开发笔记:公众号获取access_token

    微信开发中,access_token的获取是一种非常常见的功能,通过公众号的appid和appsecret来向微信公众平台请求一个临时通行凭证:access_token.公众平台上的绝大部分操作都会需 ...

  6. sqoop部署

    下载安装包 sqoop-1.99.3-bin-hadoop200.tar.gz 解压 tar zxvf sqoop-1.99.3-bin-hadoop200.tar.gz 建立sqoop链接 ln - ...

  7. MongoDB使用小结:一些不常见的经验分享

    最近一年忙碌于数据处理相关的工作,跟MongoDB打交道极多,以下为实践过程中的Q&A,后续会不定期更新补充. 另有<MongoDB使用小结:一些常用操作分享>,注:本文完成时Mo ...

  8. R爬虫知识点

    >>如何用 R 模仿浏览器的行为? GET / POST URLencode / URLdecode (破解中文網址的祕密) header & cookie 如何突破使用 cook ...

  9. 2016huasacm暑假集训训练三 D - Invitation Cards

    题目链接:http://acm.hust.edu.cn/vjudge/contest/123674#problem/D 题意:一张个向图,求从点1开始到其他各点的最短路权值和加上从其他各点到点1的最短 ...

  10. 本地测试SMTP服务器

    一年前看计算机网络里的电子邮件协议的时候,想自己建一个本地SMTP服务器,然后用telnet发送消息,后来是没找到.这次又翻看了一下,找了个Windows平台下的hMailServer,挺方便的.步骤 ...