顺序结构
按照代码书写的顺序一行一行执行
System.out.println("a");
System.out.println("b");
System.out.println("c");
//运行结果:
a
b
c
如果调整书写顺序,执行顺序也发生变化
System.out.println("a");
System.out.println("c");
System.out.println("b");
//运行结果:
a
c
b
分支结构
if语句
1、判定一个数字是奇数还是偶数
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
if(num%2==0){
System.out.println(num +"是偶数");
}else{
System.out.println(num +"是奇数");
}
2、判定一个数是正数还是负数
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
if(num > 0){
System.out.println(num+"是正数");
}else if(num < 0){
System.out.println(num+"是负数");
}else{
System.out.println("num是0");
}
3、判断某一年是否是闰年
Scanner scan = new Scanner(System.in);
int year = scan.nextInt();
if(((year%4 == 0)&&(year%100 != 0))||(year%400 == 0)){
System.out.println(year+"是闰年");
}else{
System.out.println(year+"不是闰年");
}
switch语句
根据day的数字输出日期
int day = 1;
switch(day){
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;
}
注意:
(1)break不要遗漏,否则会失去多分支选择的效果
(2)switch中的值只能是整型、枚举、字符、字符串
(3)switch不能表达复杂的条件
(4)switch虽然支持嵌套,但是代码不美观
循环结构
while循环
1、打印1-10的数字
int num = 1;//初始条件
while(num <= 10){
System.out.println(num+" ");
num++;//步进
}
2、计算1-100的和
int i = 1;
int sum = 0;
while(i <= 100){
sum+=i;
i++;
}
System.out.println(sum);
3、计算5!
int i = 1;
int ret = 1;
while(i <= 5){
ret*=i;
i++;
}
System.out.println(ret);
4、计算 5!+4!+3!+2!+1!
int sum = 0;
int i = 1;
int ret = 1;
while(i <= 5){
ret*=i;
sum+=ret;
i++;
}
System.out.println(sum);
break
break的功能是让循环提前结束
找到100-200中第一个3的倍数
int num = 100;
while(num<= 200){
if(num%3 == 0){
System.out.println("找到了3的倍数,为:+ num");
break;
}
num++;
}
//执行结果
找到了3的倍数,为102
continue
continue的功能室跳过这次循环,立即进入下次循环
找到100-200中所有3的倍数
int num = 100;
while(num<= 200){
if(num%3! == 0){
num++;
continue;
}
System.out.println("找到了3的倍数,为:+ num");
num++;
}
for循环
1、打印 1 - 10 的数字
for(int i = 1;i <= 10;i++){
System.out.println(i);
}
2、计算 1 - 100 的和
int sum = 0;
for(int i = 1;i <= 100;i++){
sum +=i;
}
System.out.println(sum);
3、计算5!
int ret = 1;
for(int i = 1;i <=5;i++){
ret *=i;
}
System.out.println(ret);
4、计算 1! + 2! + 3! + 4! + 5!
int sum = 0;
int ret = 1;
for(int i = 1;i <= 5;i++){
ret *=i;
sum +=ret;
}
System.out.println(sum);*/
5、计算 1! + 2! + 3! +…+n!
Scanner scan=new Scanner(System.in);
int num = scan.nextInt();
int sum = 0;
for(int j = 1;j <= num;j++){
int ret = 1;
for(int i = 1;i <= j;i++){
ret *=i;
}
sum +=ret;
}
System.out.println(sum);
6、使用 Scanner 循环读取 N 个数字
Scanner scan = new Scanner(System.in);
while(scan.hasNextInt()){
int num = scan.nextInt();
System.out.println(num);
}
do…while循环
打印1-10
int num = ;
do{
System.out.println(num);
num++;
}while(num <= 10);