java基础 ----- 循环结构
循环的结构特点 : 循环条件 循环操作
----- while 循环
来个小例子,实现打印50 份shij
1、确定循环条件和循环操作
2、套用while语法写出代码
3、检查循环能否退出
1 public class WhileDemo { 2 3 /* 4 * 如何使用while循环 5 */ 6 public static void main(String[] args) { 7 int count = 1; 8 while(count <= 50){ 9 System.out.println("打印第" +count+ "份试卷"); 10 count++; 11 } 12 } 13 }
复杂一点 通过输入的进行判断要不要进行循环
1 import java.util.Scanner; 2 3 public class WhileDemo { 4 5 /* 6 * 如何使用while循环 7 */ 8 public static void main(String[] args) { 9 String answer; //标识是否合格 10 Scanner input = new Scanner(System.in); 11 System.out.print("合格了吗?(y/n):"); 12 answer = input.next(); 13 while(!"y".equals(answer)){ 14 System.out.println("上午阅读教材!"); 15 System.out.println("下午上机编程!\n"); 16 System.out.print("合格了吗?(y/n):"); 17 answer = input.next(); 18 } 19 System.out.println("完成学习任务!"); 20 } 21 }
------------- do- while 循环
//经过几天学习,要让其先进行编写在进行,判断要不要进行编写 import java.util.Scanner; public class DoWhileDemo { /* * 如何使用do-while循环 */ public static void main(String[] args) { Scanner input = new Scanner(System.in); String answer = ""; //标识是否合格 do{ System.out.println("上机编写程序!"); System.out.print("合格了吗?(y/n)"); answer = input.next(); System.out.println(""); }while(!"y".equals(answer)); System.out.println("恭喜你通过了测试!"); } }
注意: while 与 do-while 循环的区别
--- for 循环
好处 : 比while循环更加简洁
计算平均分
1 import java.util.*; 2 public class AverageScore{ 3 /** 4 * 统计80分以上学生比例 5 */ 6 public static void main(String[] args){ 7 int score; //每门课的成绩 8 int sum = 0; //成绩之和 9 double avg = 0.0; //平均分 10 Scanner input = new Scanner(System.in); 11 System.out.print("输入学生姓名: "); 12 String name = input.next(); 13 for(int i = 0; i < 5; i++){ //循环5次录入5门课成绩 14 System.out.print("请输入5门功课中第" + (i+1) + "门课的成绩: "); 15 score = input.nextInt(); //录入成绩 16 sum = sum + score; //计算成绩和 17 } 18 avg = (double)sum / 5; //计算平均分 19 System.out.println(name + "的平均分是:" + avg); 20 } 21 }
输出加法表
1 import java.util.*; 2 public class SumTable { 3 /** 4 * 输入整数,输出其加法表 5 */ 6 public static void main(String[] args){ 7 int i, j; 8 Scanner input = new Scanner(System.in); 9 System.out.print("请输入一个值: "); 10 int val = input.nextInt(); 11 System.out.println("根据这个值可以输出以下加法表: "); 12 for(i = 0, j = val; i <= val; i++, j--){ 13 System.out.println(i + " + " + j + " = " + (i+j)); 14 } 15 } 16 }
for循环里面的不可以少两个分号啊
--------- 总结 三个循环的特点
-------- 区别
区别2: 执行顺序
while循环:先判断,在执行
do-while循环:先执行,在判断
for循环: 先判断,在执行
区别3: 适用情况
循环次数确定的情况通常使用for循环
循环次数不确定的情况通常使用while循环 在判断是先执行在循环 还是先循环在执行
-- 使用三种方法计算100以内偶数和
1 public class EvenSum { 2 3 /* 4 * 计算100以内偶数之和 5 * 思考:还有没有其他方式? 6 */ 7 public static void main(String[] args) { 8 //使用while 9 /*int sum = 0; //当前之和 10 int num = 2; //加数 11 while(num <= 100){ 12 sum = sum + num; //累加 13 num = num + 2; 14 } 15 System.out.println("100以内的偶数之和为:" + sum);*/ 16 17 //使用do-while 18 /*int sum = 0; //当前之和 19 int num = 2; //加数 20 do{ 21 sum = sum + num; //累加 22 num = num + 2; 23 }while(num <= 100); 24 System.out.println("100以内的偶数之和为:" + sum);*/ 25 26 //使用for 27 int sum = 0; //当前之和 28 for(int num=2;num<=100;num=num+2){ 29 sum = sum + num; //累加 30 } 31 System.out.println("100以内的偶数之和为:" + sum); 32 } 33 }