流程控制语句
学习目标:
例如:
- 掌握if …else判断语句
- Switch选择语句
学习内容:
第三章、流程控制语句
各种语言都会提供两种进本流程控制结构:分支结构和循环结构
3-1、顺序结构(从上往下的执行)
public class Test2 {
public static void main(String[] args){
//顺序执行,根据编写的顺序,从上到下运行
System.out.println(11);
System.out.println(34);
System.out.println(3);
}
}
3-2、输入语句
三个步骤:
1、准备Scanner类型变量
2、提示
3、接收输入内容
//1、准备Scanner类型的变量
//Scanner是一个引用数据类型,它的全名称是java.util.Scanner
//input就是一个引用数据类型的变量了,赋给它的值是一个对象
java.util.Scanner input = new java.util.Scanner(System.in);//system.in默认代表键盘输入
//2、提示输入xx
System.out.print("请输入一个整数:");
//3、接收输入内容
int num = input.nextInt();
//列出各种数据类型的输入
int num = input.nextInt();
long bigNum = input.nextLong();
double d = input.nextDouble();
boolean b = input.nextBoolean();
String s = input.next();
char c = input.next().charat(0);//先按照字符串接收,然后再取字符串的第一个字符(下标为0)
练习1:输入一个整数并打印它
public class Test3 {
public static void main(String[] args){
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.print("请输入一个整数:");
int num = input.nextInt();
System.out.println(num);
}
}
练习2 :从键盘输入个人信息
public class Input {
public static void main(String[] args){
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.print("请输入姓名:");
String name = input.next();
System.out.print("请输入年龄:");
int age = input.nextInt();
System.out.print("请输入性别:");
char gender = input.next().charat(0);
System.out.print("请输入体重:");
double weight = input.nextDouble();
System.out.print("请输入是否已婚(true/false):");
boolean isMarry = input.nextBoolean();
System.out.println("姓名:"+name);
System.out.println("年龄:"+age);
System.out.println("性别:"+gender);
System.out.println("体重:"+weight);
System.out.println("婚否:"+(isMarry?"是":"否"));
}
}
练习3:next()和nextLine()
- next()方法:遇到空格等空白符,就认为输入结束
- nextLine():遇到回车就认为输入结束
public class Input2 {
public static void main(String[] args){
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = input.nextLine();
System.out.println(str);
}
}
3-3、分支结构:if语句
if(条件表达式){
语句体;
}
练习1:
public class IfDemo1 {
public static void main(String[] args){
int a = 10;
int b = 13;
int c = 10;
if (a == b){
System.out.println("a等于b");
}
if (a == c){
System.out.println("a等于c");
}
System.out.println("结束!");
}
}
练习2:从键盘输入年份,请输入该年份的2月份的总天数,闰年2月29天,平年28天
闰年:
- 能被4整除,不能被100整除
- 能被400整除
public class InputIf {
public static void main(String[] args){
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.print("请输入年份:");
int year = input.nextInt();
int day = 28;
if (year%4==0 && year%100!=0 || year%400==0){
day++;
}
System.out.println(year + "年的2月份共" + day + "天");
input.close();
}
}
3-4、分支结构:if…else语句
if(关系表达式){
语句体1;
}else{
语句体2;
}
练习1:判断奇偶数
public class IfElse {
public static void main(String[] args){
int a = 1;
if (a % 2 == 0){
System.out.println("a是偶数");
}else{
System.out.println("a基数");
}
System.out.println("程序结束!");
}
}
练习2:使用三元运算符实现
public class IfElse {
public static void main(String[] args){
int a = 1;
if (a % 2 == 0){
System.out.println("a是偶数");
}else{
System.out.println("a基数");
}
String str;
str = a%2==0 ? "a偶数":"a基数";
System.out.println(str);
System.out.println("程序结束!");
}
}
练习3:求出三个数的最大值
class If_MaxValue {
public static void main(String[] args) {
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.print("请输入第一个整数:");
int num1 = input.nextInt();
System.out.print("请输入第二个整数:");
int num2 = input.nextInt();
System.out.print("请输入第三个整数:");
int num3 = input.nextInt();
int max;
if (num1 > num2) {
max = num1;
} else {
max = num2;
}
if (num3 > max) {
max = num3;
}
System.out.println("max=" + max);
//三目运算符实现
int max1 = num1 > num2 ? num1 : num2;
max1 = max1>num3?max1:num3;
System.out.println("max1="+max1);
}
}
3-5、分支结构:if…else if…else
if (判断条件1) {
执行语句1;
} else if (判断条件2) {
执行语句2;
}
...
}else if (判断条件n) {
执行语句n;
} else {
执行语句n+1;
}
练习1:通过指定考试成绩,判断学生等级
- 90 -100 优秀
- 70-89 良好
- 60 - 69及格
- 60以下不及格
public class Grades_IfElse {
public static void main(String[] args){
int score = 89;
if (score<=0 ||score>100){
System.out.println("你输的成绩有误");
} else if (score>=90 && score<=100) {
System.out.println("优秀");
} else if (score>=70 && score<=90) {
System.out.println("良好");
} else if (score >= 60 && score < 70) {
System.out.println("及格");
} else {
System.out.println("不及格");
}
}
}
3-6、分支结构:if…else嵌套
public class Grades_IfElse {
public static void main(String[] args){
// int score = 89;
// if (score<=0 ||score>100){
// System.out.println("你输的成绩有误");
// } else if (score>=90 && score<=100) {
// System.out.println("优秀");
// } else if (score>=70 && score<=90) {
// System.out.println("良好");
// } else if (score >= 60 && score < 70) {
// System.out.println("及格");
// } else {
// System.out.println("不及格");
// }
//
int score = 89;
if (score<=0 ||score>100){
System.out.println("你输的成绩有误");
} else {
if (score >= 90 && score <= 100) {
System.out.println("优秀");
} else if (score >= 70 && score <= 90) {
System.out.println("良好");
} else if (score >= 60 && score < 70) {
System.out.println("及格");
} else {
System.out.println("不及格");
}
}
}
}
3-7、switch选择结构
switch(表达式){
case 常量值1:
语句块1;
【break;】
case 常量值2:
语句块2;
【break;】
。。。
【default:
语句块n+1;
【break;】
】
}
练习1:
public class Switch {
public static void main(String[] args) {
//定义指定的星期
int weekday = 7;
//switch语句实现选择
switch(weekday) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期日");
break;
default:
System.out.println("你的数字有误");
break;
}
}
}
学习时间:
`
- 周一至周天晚上 7 点—晚上9点
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。