public class While02 {
public static void main(String[] args) {
/**
* while(循环条件){
* 循环体(循环操作)
* }
* 循环条件 必须是一个boolean类型的值!
* 当满足了循环条件,会执行循环体,直到不满足循环条件是退出!
*/
System.out.println("大家辛苦了1");
System.out.println("大家辛苦了2");
System.out.println("大家辛苦了3");
System.out.println("大家辛苦了4");
System.out.println("大家辛苦了5");
System.out.println("**************************************");
// 定义一个变量 用来保存 循环的次数
int num = 0;
while (num <= 10000) {
System.out.println("大家辛苦了" + num);
// 自身+1
num++;
}
System.out.println(num);
}
}

1.循环打印大家辛苦

public class WhileDemo03 {
public static void main(String[] args) {
/**
* 循环打印50份试卷
* 分析:
* 循环条件:count<=50 小于等于50次
* 循环体: 打印试卷
*/
int count = 1;
while (count <= 50) {
System.out.println("正在打印第" + count + "份试卷");
// 迭代变量
count++;
}
}
}

2.打印试卷

public class WhileDemo04 {
/**
* 老师每天检查张浩的学习任务是否合格。
* 如果不合格,则继续进行。
老师给张浩安排的每天的学习任务为:
上午阅读教材,学习理论部分,
下午上机编程,掌握代码部分
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入是否合格?(y/n)");
String answer = scanner.next();
// 循环条件 -==》是否合格? 如果不合格 一直学习!
while (answer.equalsIgnoreCase("n")) {
System.out.println("阅读教材,学习理论部分");
System.out.println("上机编程,掌握代码部分");
System.out.println("再次输入是否合格?(y/n)");
answer = scanner.next();
}
System.out.println("完成了 学习任务!");
}
}

3.成绩是否合格

public class WhileDemo05 {
/**
* 2012年培养学员25万人,每年增长25%。
* 请问按此增长速度
* 到哪一年培训学员人数将达到100万人?
*/
public static void main(String[] args) { int year = 2012;
double person = 25;
while (person <= 100) {
person *= (1 + 0.25); // person*=(1+0.25);
year++;
}
System.out.println(year + "培训学员人数将达到100万人");
}
}

4.学员人数过100?

public class WhileDemo06 {
/**
* 编程实现:计算100以内(包括100)的偶数之和
设置断点并调试程序,观察每一次循环中变量值的变化
*/
public static void main(String[] args) { int num = 0;
int sum = 0;// 记录所有的偶数和
while (num <= 100) {
if (num % 2 == 0) { // 偶数
sum += num; // sum=sum+num
}
num++;
}
System.out.println("所有的偶数和:" + sum);
}
}

5.100以内偶数和

public class WhileDemo07 {
public static void main(String[] args) {
System.out.println("欢迎进入MyShopping管理系统");
System.out.println("***************************");
System.out.println("1.帽子 \t 2.网球鞋 \t 3.球拍");
Scanner scanner = new Scanner(System.in);
System.out.println("请您输入购买物品的编号");
int choose = scanner.nextInt(); // 获取用户的选择
System.out.println("请您输入购买的数量");
int count = scanner.nextInt();// 获取用户购买的数量
// 定义一个总消费
double money = 0;
switch (choose) {
case 1:
System.out.println("您购买的是 1.帽子 \t ¥50\t总金额:" + (count * 50));
money += (count * 50);
break;
case 2:
System.out.println("您购买的是 2.网球鞋 \t ¥30\t总金额:" + (count * 30));
money += (count * 30);
break;
case 3:
System.out.println("您购买的是 3.球拍 \t ¥5\t总金额:" + (count * 5));
money += (count * 5);
break;
}
System.out.println("是否继续购物?(y/n)");
String answer = scanner.next(); while (answer.equalsIgnoreCase("y")) { // 循环购物操作
System.out.println("***************************");
System.out.println("1.帽子 \t 2.网球鞋 \t 3.球拍");
System.out.println("请您输入购买物品的编号");
choose = scanner.nextInt(); // 获取用户的选择
System.out.println("请您输入购买的数量");
count = scanner.nextInt();// 获取用户购买的数量
switch (choose) {
case 1:
System.out.println("您购买的是 1.帽子 \t ¥50\t总金额:" + (count * 50));
money += (count * 50);
break;
case 2:
System.out.println("您购买的是 2.网球鞋 \t ¥30\t总金额:" + (count * 30));
money += (count * 30);
break;
case 3:
System.out.println("您购买的是 3.球拍 \t ¥5\t总金额:" + (count * 5));
money += (count * 5);
break;
}
System.out.println("是否继续购物?(y/n)");
answer = scanner.next();
}
System.out.println("您本次消费是:" + money);
System.out.println("请您输入支付金额:");
double pay = scanner.nextDouble();
while (pay < money) { // 说明金额不正确
System.out.println("金额不正确!请重新支付!");
pay = scanner.nextDouble();
}
System.out.println("找零:" + (pay - money));
}
}

6.Myshopping管理系统

public class DoWhileDemo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double money = 0;
String answer = "";
do { // 先执行 再判断
System.out.println("欢迎进入MyShopping管理系统");
System.out.println("***************************");
System.out.println("1.帽子 \t 2.网球鞋 \t 3.球拍");
System.out.println("请您输入购买物品的编号");
int choose = scanner.nextInt(); // 获取用户的选择
System.out.println("请您输入购买的数量");
int count = scanner.nextInt();// 获取用户购买的数量
switch (choose) {
case 1:
System.out.println("您购买的是 1.帽子 \t ¥50\t总金额:" + (count * 50));
money += (count * 50);
break;
case 2:
System.out.println("您购买的是 2.网球鞋 \t ¥30\t总金额:" + (count * 30));
money += (count * 30);
break;
case 3:
System.out.println("您购买的是 3.球拍 \t ¥5\t总金额:" + (count * 5));
money += (count * 5);
break;
}
System.out.println("是否继续购物?(y/n)");
answer = scanner.next();
} while (answer.equalsIgnoreCase("y")); System.out.println("您本次消费是:" + money);
System.out.println("请您输入支付金额:");
double pay = scanner.nextDouble();
while (pay < money) { // 说明金额不正确
System.out.println("金额不正确!请重新支付!");
pay = scanner.nextDouble();
}
System.out.println("找零:" + (pay - money));
}
}

7.Myshopping管理系统2

public class WhileDemo08 {
/**
* 使用do-while实现:输出摄氏温度与华氏温度的对照表,
* 要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。
转换关系:华氏温度 = 摄氏温度 * 9 / 5.0 + 32 循环操作:计算摄氏温度,并输出对照条目
循环条件:
条目<=10 && 摄氏温度 <= 250
*/
public static void main(String[] args) {
int count = 1; // 对照条目
double c = 0; // 摄氏度
double f = 0; // 华氏度
System.out.println("条目\t摄氏度\t华氏度");
do {
// 转换
f = c * 9 / 5.0 + 32;
System.out.println(count + "\t" + c + "\t" + f);
count++;
c += 20;
} while (count <= 10 && c <= 250);
}
}

8.温度对比表

public class WhileDemo09 {
/**
* 实现一个数字的反转
*/
public static void main(String[] args) {
int num = 123456789;
int temp = 1;
System.out.print("反转之后的数字:");
while (num != 0) {
// 依次与10取余
temp = num % 10; //
System.out.print(temp);
num = num / 10;
}
}
}

9.数字反转

public class ForDemo01 {
public static void main(String[] args) {
/**
*
* for(表达式1;表达式2;表达式3) {
* 循环体
* }
* 表达式1:初始化变量 int a=0;
* 表达式2:循环条件!满足条件执行循环体操作!
* 表达式3:迭代变量!
*
* 三个表达式都可以省略!但是;不能省略!
*
* 执行顺序:
* 表达式1---》表达式2---》循环体---》表达式3--->表达式2---》循环体---》表达式3
*/
for (int i = 1; i <= 100; i++) {
System.out.println("好好学习!" + i);
}
}
}

10.for循环执行顺序

public class ForDemo02 {
/**
* 循环输入某同学S1结业考试的5门课成绩,并计算平均分
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请您输入姓名:");
// 定义一个变量 来保存总成绩
double sum = 0;
String name = scanner.next();
for (int i = 1; i <= 5; i++) {
System.out.println("请您输入第" + i + "门课程的成绩:");
double score = scanner.nextDouble();
sum += score; // 总成绩
}
System.out.println("平均分是:" + (sum / 5));
}
}

11.计算平均分

public class ForDemo03 {
public static void main(String[] args) {
// 根据用户的输入 产生对应的加法表
Scanner scanner = new Scanner(System.in);
System.out.println("请您输入一个数字:");
int num = scanner.nextInt();
for (int i = 0; i <= num; i++) {
System.out.println(i + "+" + (num - i) + "=" + (num));
}
}
}

12.加法表

public class ErrorDemo04 {
public static void main(String[] args) {
/**
* int i = 0; // 把初始化变量 局部化!
for (; i <= 5; i++) {
System.out.println(i); }
*/
/**for (;;) { // 死循环
System.out.println(1);
}*/ /**for (int i = 0;; i++) { // 省略了 条件判断
System.out.println(i);
}
*/ for (int i = 0; i < 10;) { // 省略了 条件判断迭代变量
System.out.println(i);
}
}
}

13.for循环条件省略

public class ForDemo06 {
// 计算年龄大于30的 占比
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 定义年龄的变量
int age = 0;
// 年龄大于30以上的人数
int count = 0;
for (int i = 1; i <= 5; i++) {
System.out.println("请您输入年龄:");
age = scanner.nextInt();
if (age >= 30) {
count++;
}
}
System.out.println("30岁以上的比例是:" + (count / 5.0 * 100) + "%");
System.out.println("30岁以下的比例是:" + ((1 - count / 5.0) * 100) + "%");
}
}

14.年龄大于30岁比例

public class ForDemo07 {
public static void main(String[] args) { System.out.println("请您输入一个数字:");
Scanner scanner = new Scanner(System.in);
double num = scanner.nextDouble(); DecimalFormat df = new DecimalFormat("0.00"); // 保留两位有效数字
String number = df.format(num); // 把double类型的数据 保留两位有效数字 返回String
System.out.println("保留两位有效数字:" + number); System.out.println("*********************************"); NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(2); // 保留两位有效数字
number = nf.format(num);
System.out.println("保留两位有效数字:" + number); }
}

15.保留两位有效数字

public class ForDemo08 {
/**
* 日期的转换
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
Date date = new Date(); // 日期 格式 Mon Mar 06 11:02:55 CST 2017
System.out.println("日期 格式:" + date);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年-MM月-dd日 hh:mm:ss");
String time = sdf.format(date); // 把日期格式 转换成 String
System.out.println(time);
time = "2018年-05月-05日 11:11:11";
// 把 String 转换成 日期格式
System.out.println(sdf.parse(time));
}
}

16.日期转换

public class ForDemo09 {
//break 跳出当前循环结构
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
System.out.println("第" + i + "圈");
if (i == 8) {
System.out.println("坚持不住!!!");
break;
}
}
System.out.println("比赛结束!");
}
}

17.break跳出循环

public class ForDemo10 {
/**
* 循环录入某学生5门课的成绩并计算平均分。
* 如果某分数录入为负,停止录入并提示录入错误
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 用来保存总成绩
double sum = 0;
// 标记 是否计算平均分
boolean flag = true;
for (int i = 1; i <= 5; i++) {
System.out.println("请您输入第" + i + "门课程的成绩:");
double score = scanner.nextDouble();
if (score < 0) { // 分数为负数
System.out.println("您的输入有误!退出系统!");
flag = false;
break;
}
sum += score;
}
if (flag) { // flag==true
System.out.println("平均分是:" + (sum / 5));
}
}
}

18.循环输入成绩

public class ForDemo12 {

    /**
*循环录入Java课的学生成绩,
*统计分数大于等于80分的学生比例
*
*continue:代表的是:结束本次循环!继续下次的循环! 之后的代码不会执行!
*跳出循环体了吗??没有跳出!代表 循环继续!
*
*break: 跳出当前整个循环体!
*
*return: 跳出当前方法,可以带有返回值!
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 定义变量 保存分数大于80的人数
int sum = 0;
System.out.println("请输入班级的人数:");
int count = scanner.nextInt();
for (int i = 1; i <= count; i++) {
System.out.println("请输入第" + i + "名同学的成绩:");
double score = scanner.nextDouble();
if (score < 80) {
continue;
}
sum++;
return;
}
System.out.println("80分以上的人数:" + sum);
System.out.println("80分以上的人数占比:" + (sum * 1.0 / count) * 100 + "%");
}
}

19.return和break等

public class ForDemo13 {
/**
*验证用户登录 失败次数
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String name; // 用户名
String password; // 密码
int i;// 记录用户失败的次数
// 进行三次循环操作
for (i = 0; i < 3; i++) {
System.out.println("请输入用户名:");
name = scanner.next();
System.out.println("请输入密码:");
password = scanner.next();
// 判断用户名和密码是否正确
if ("admin".equals(name) && "admin".equals(password)) {
System.out.println("登录成功!");
break;
} else {
System.out.println("输入错误!您还有" + (2 - i) + "次机会!");
}
}
if (i == 3) { // 3次输入都不对
System.out.println("对不起!您三次都输入错误!");
}
}
}

20.验证用户登录

// 三种循环 来实现 100以内的偶数和
public static void main(String[] args) {
// 01.使用while循环
int num = 0;
int sum = 0; // 求和
while (num <= 100) {
// 找到偶数并相加
if (num % 2 == 0) {
sum += num; // sum=sum+num??
}
num++;
}
System.out.println("while偶数和是:" + sum); // 02.使用do while
sum = 0;
num = 0;
do {
if (num % 2 == 0) { // 找到偶数
sum += num;
}
num++;
} while (num <= 100);
System.out.println("dowhile偶数和是:" + sum); // 03.使用for
sum = 0;
for (int i = 0; i <= 100; i++) {
if (i % 2 == 0) {
sum += i;
}
}
System.out.println("for偶数和是:" + sum);
}

21.3种循环计算100以内偶数和

// a+=b a=a+b 是一致的吗?
int a = 5;
double b = 5;
// a =a + b;
a += b; // 做了强制类型转换 (int) (a + b) 不会编译报错
System.out.println(a);

22.a+=b 和 a=a+b

java基础07 循环结构的更多相关文章

  1. java 基础 04 循环结构 一维数组

    内容: (1)循环结构 (2)一维数组 1.循环结构 1.1for循环 (1)语法格式 for(初始化表达式1;条件表达式2;修改初始化表达式3){ 循环体; } (2)执行流程 执行初始化表达式 = ...

  2. java基础知识—循环结构

    1.while 循环 语法: while(循环操作){ 循环操作: } 特点:先判断,再执行:2. == : 用于数字比较 比较的是地址 equals: 用于字符串比较 比较的是字符 3.do-whi ...

  3. 第五篇:python基础之循环结构以及列表

    python基础之循环结构以及列表   python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...

  4. 基础语法-循环结构for

    基础语法-循环结构for 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.for循环格式 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 执行语句(循环体); } ...

  5. 基础语法-循环结构do...while

    基础语法-循环结构do...while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.do...while语句格式 do{ 执行语句; }while(条件表达式); 温馨提示: ...

  6. 基础语法-循环结构while

    基础语法-循环结构while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.while语句格式 while(条件表达式){ 执行语句; } 二.while语句案例 /** * ...

  7. Java入门 - 语言基础 - 09.循环结构

    原文地址:http://www.work100.net/training/java-loop.html 更多教程:光束云 - 免费课程 循环结构 序号 文内章节 视频 1 概述 2 while循环 3 ...

  8. python基础之循环结构以及列表

    python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...

  9. java基础3_循环语句,数组

    java中的循环: Java中提供了3中循环结构:  while  do-while  for ① 循环结构的作用? 可以不断重复执行循环结构中的代码: ② 上面的3个循环结构功能都是一样的,只是结构 ...

随机推荐

  1. word文档老是出现这个提示-----“发现二义性的名称:TmpDDE”错误

    你好 我解决这个问题了,我把appdata目录下的normal.dotm删除了就没问题了 将系统中路径C:\Users\Administrator\AppData\Roaming\Microsoft\ ...

  2. 基于jQuery仿Flash横向切换焦点图

    给各网友分享一款基于jQuery仿Flash横向切换焦点图.利用Flash可以制作很多漂亮的图片相册应用,今天我们要用jQuery来实现这样的效果.它是一款仿Flash的横向图片切换焦点图插件,可以自 ...

  3. 微博excel数据清洗(Java版)

    微博数据清洗(Java版) 原创 2013年12月10日 10:58:24 2979 大数据公益大学提供的一份数据,义务处理一下,原始数据是Excel,含有html标签,如下:   要求清洗掉html ...

  4. 本系列love2d示例代码错误集中整理

    3.输入和音乐 音乐不是循环播放的,可以在love.audio.play(music) 之前添加music:setLooping(true)

  5. 专题实验 Toad 用户的创建与管理( 包括 role 等 )

    1. 用户登录数据库 是否可以通过操作系统权限来登录数据库, $ORACLE_HOME/network/admin/sqlnet.ora 这个文件中设置, 如果增加参数sqlnet.authentic ...

  6. 009杰信-创建购销合同Excel报表系列-2-建立购销合同(增删改查)

    前面一篇文章已经分析好了数据库的表,这篇文章针对购销合同表做一个增删改查. 和之前的表的增删该查类似. 项目结构如下:

  7. Swing与AWT在事件模型处理上是一致的

    Swing与AWT在事件模型处理上是一致的. Jframe实际上是一堆窗体的叠加. Swing比AWT更加复杂且灵活. 在JDK1.4中,给JFRAME添加Button不可用jf.add(b).而是使 ...

  8. java.lang下面有一个接口:Comparable(可比较的)

    对于自定义对象,Sort不知道规则,所以无法比较.这种情况下一定要定义排序规则.方式有两种: java.lang下面有一个接口:Comparable(可比较的) 可以让自定义对象实现一个接口,这个接口 ...

  9. db2 导入cvs

    1)       打开DB2 命令行 2)       如果是第一次连接到远程的DB2 数据库:如果不是,请直接跳转到3) 在DB2 命令行窗口执行: catalog tcpip node DB21 ...

  10. Github+Jekyll —— 创建个人免费博客(五)jekyllproject公布到github上

    摘要: 本文中我将介绍一下怎样在github上搭建个人Blog(博客),也顺便让我们掌握一下github Pages功能,另外还涉及到Jekyll技术. ======================= ...