顺序结构:从上到下,一步步执行
import java.util.Scanner;
public class Testone{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入第一个整数:");
int one = input.nextInt();//从键盘输入一个整数值给int型赋值
System.out.println("请输入第二个整数:");
int two = input.nextInt();//从键盘输入一个整数值给int型赋值
boolean flag = one>two;
System.out.println(flag);
}
}
第一种格式:
if(条件表达式){
语句体;
}
import java.util.Scanner;
public class Testone{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入第一个整数:");
int one = input.nextInt();//从键盘输入一个整数值给int型赋值
System.out.println("请输入第二个整数:");
int two = input.nextInt();//从键盘输入一个整数值给int型赋值
if(two !=0){
int flag = one/two;
System.out.println(flag);
}
}
}
第二种格式:
if(条件表达式){
语句体1;
}else{
语句体2;
}
第三种格式:
if(条件表达式){
语句体1;
}else if{
语句体2;
}else{
语句体3;
}
import java.util.Scanner;
public class Testtwo{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入第一个成绩:");
int score = input.nextInt();//从键盘输入一个整数值给int型赋值
if(score >=90){
System.out.println("优秀");
}else if(score >=80){
System.out.println("良好");
}else if(score >=60){
System.out.println("及格");
}else{
System.out.println('不及格')
}
}
}
嵌套if-else,一个if-else里面再包含一个if-else
筛选0-100的数据是合法输入
import java.util.Scanner;
public class Testtwo{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入第一个成绩:");
int score = input.nextInt();//从键盘输入一个整数值给int型赋值
if(score >=0 && score<=100){
if(score>=90){
System.out.println("优秀");
}else if(score >=80){
System.out.println("良好");
}else if(score >=60){
System.out.println("及格");
}else{
System.out.println('不及格')
}
}else{
System.out.println("请输入合法的分数");
}
}
}
switch(表达式){
case 常量值1;
语句块1;
[break;]
case 常量值2;
语句块2;
[break;]
}
import java.util.Scanner;
public class TestThree{
public static void main(String[] args){
System input = new Scanner(System.in);
System.out.println('请输入名次');
int choice = input.nextInt();
//switch后面的变量值与case后面的常量值进行等值比较
switch(choice){
case 1:
System.out.println('金牌');
break;//跳出switch结构,否则输入1,会输出金牌银牌铜牌重在参与,都会输出
case 2:
System.out.println('银牌');
case 3:
System.out.println('铜牌');
default:
System.out.println('重在参与');//defalut部分可以写在任何位置,default下面还有case时会先检查case,程序会自动最后执行default
}
}
}
如何避免case贯穿?
加break
java12之前的switch-case后面只能接一个常量值
while(循环条件语句){
循环语句体;
}
while(循环条件语句)中循环条件必须是boolean类型
练习1:计算1+2+3+。。+100
// 计算1+2+3+。。+100
public class Testfour{
public static void main(String[] args){
int sum = 0;
int i = 1;
while(i<100){
sum+=i;
i+=1;
}
System.out.println("i="+i);
System.out.println("sum="+sum);
System.out.println("程序结束");
}
}
练习2:找到1-100之间的所有可以同时被3和7整除的数打印出来
public class Testfour{
public static void main(String[] args){
int i = 1;
while(i<=100){
if(i%3 == 0 && i%7 == 0){
System.out.println(i);
}
i++;
}
}
}
练习3:找到100-999之间的水仙花数打印到控制台上
153 = 111 +555 + 333
public class Testfour{
public static void main(String[] args){
int i = 100;
while(i<=999){
//取个十百位上的数字
int ge = i%10;
int shi = (i/10)%10;
int bai = i/100;
int he = ge*ge*ge+shi*shi*shi+bai*bai*bai;
if(i == he){
System.out.println(i);
}
i++;
}
}
}
练习4:斐波那契数列 1 1 2 3 5 8 13 21 34 55 89 144
public class Testfour{
public static void main(String[] args){
int i = 1;
int j = 1
while(i<=100){
System.out.println(i);
i = j;
j = i+j;
}
}
}