if语句输入月份判断季节_数据输入、顺序结构、分支结构、循环结构

数据输入,三个和尚升级:增加数据输入

/*  三个和尚升级版,加入输入功能*/import java.util.Scanner;public class heshangshengji {  public static void main(String[] args) {    //用键盘录入身高,首先导包    Scanner sc = new Scanner(System.in);    //键盘录入三个身高分别赋值给三个变量;    System.out.println("请输入第一个和尚身高:");    int height1 = sc.nextInt();    System.out.println("请输入第二个和尚身高:");    int height2 = sc.nextInt();    System.out.println("请输入第三个和尚身高:");    int height3 = sc.nextInt();    //用三元运算符获取前两个身高最高值,并用临时变量保存    int tempHeight = height1 > height2 ? height1 : height2;     //用算远运算符获取临时身高和第三个和尚身高,并保存在最大身高变量    int maxHeight = tempHeight > height3 ? tempHeight : height3;    //输出结果    System.out.println("maxHeight:" + maxHeight);  }}

java中的顺序结构:语句的执行顺序流程

java中的结构大致分为三种

1.顺序结构:按照代码顺序依次执行

2.分支结构(if,switch)

3.循环结构(for,while,do...while)

if语句的第一种:这种只能判断一种情况

/*  if语句格式1    if (关系表达式) {      语句体;    }  执行流程:    1.首先计算关系表达式的值    2.如果关系表达式的值为t就执行语句体    3.如果关系表达式的值为f就不执行语句体    4.继续执行后面的语句内容*/public class ifyuju1 {  public static void main(String[] args) {    System.out.println("开始");    //定义两个变量    int a = 10;    int b = 20;    //需求:判断a、b是否相等,如果相等,就在控制台输出:a等于b    if(a == b) {      System.out.println("a等于b");    }    //需求:判断a、c是否相等,如果相等,就在控制台输出:a等于c    int c = 10;    if(a == c) {      System.out.println("a等于c");    }    System.out.println("结束");  }}

if语句的第二种:lf...else 可以判断多于1种的情况

/*  if语句格式2    if (关系表达式) {      语句体1;    } else {      语句体2;    }  执行流程:    1.首先计算关系表达式的值    2.如果关系表达式的值为t就执行语句体1    3.如果关系表达式的值为f就不执行语句体2    4.继续执行后面的语句内容*/public class ifyuju2 {  public static void main(String[] args) {    System.out.println("开始");    //定义两个变量    int a = 10;    int b = 20;    // b=5;这句就直接修改了b的值    //需求:判断a是否大于b,如果是,就在控制台输出:a大于b,反之输出:a不大于b    if(a > b) {      System.out.println("a大于b");    } else {      System.out.println("a不大于b");    }    System.out.println("结束");  }}

‍判断是否是奇偶数

/*  判断是否是奇偶数  需求:任意输入一个整数,在控制台输出该整数是奇数还是偶数*/import java.util.Scanner;//输入的第一步导包public class Jioushu {  public static void main(String[] args) {    Scanner sc = new Scanner(System.in);输入的第二步创建对象    System.out.println("请输入一个整数:" );    int number = sc.nextInt(); //输入的第三步接收数据      //判断是否是偶数需要用到取余运算符 number % 2 == 0    if(number%2 == 0) {      System.out.println(number + "是偶数" );    } else {      System.out.println(number + "是奇数" );    }    }}

if语句第三种

if...else if...else可对多种情况进行判断

/*  if语句格式3   if (关系表达式1) {     语句体1   } else if (关系表达式2) {     语句体2   }   ...   else {    语句体n+1    }   执行流程:   1.首先计算关系表达式1的值   2.如果为t就执行语句体1,如果为f就执行关系表达式2的值   3.如果为t就执行语句体2,如果为f就执行关系表达式3的值   4...   5.如果没有如何关系表达式为t,就执行语句体n+1 */ import java.util.Scanner; public class Ifyuju3 {   public static void main (String[] args) {     System.out.println("开始");     //需求:键盘录入一个星期数(1,2,3,。。。7),输出对应的星期一,星期二     Scanner sc = new Scanner(System.in);     System.out.println("输入一个星期数(1-7):");     int week = sc.nextInt();     if(week == 1) {       System.out.println("星期一");     } else if(week == 2){      System.out.println("星期二");      } else if(week == 3) {      System.out.println("星期三");     } else if(week == 4) {      System.out.println("星期四");      } else if(week == 5) {      System.out.println("星期五");      } else if(week == 6) {      System.out.println("星期六");      } else {      System.out.println("星期天");      }       System.out.println("结束");   } }

分支结构switch

9e968f7a7742cb8e98f38d8af1231956.png

案例:输入1-7,输出相应的星期数

/*  switch语句格式  switch(表达式) {    case 值1:    语句体1;    break;    case 值2:    语句体2;    break;    ...    default:    语句体n+1;    [break;]  }  格式说明:  表达式:取值为byte、short、int、char、JDK5以后是枚举,JDK7以后是String  case:后面跟的是要和表达式进行比较的值。  break:表达式中断。结束的意思,用来结束switch语句  default:表示情况都不匹配时,就执行该处内容,和if语句的else相似。  执行流程:  首先计算表达式的值  依次和case后面的值进行比较,如果有对应的值,就会执行相应语句,执行过程中遇到break就会结束  如果所有case后面的值和表达式的值都不匹配,就会执行default里面的语句体,然后程序结束*/import java.util.Scanner;public class Switch {  public static void main(String[] args) {    System.out.println("开始");    //需求:键盘录入一个星期数(1,2,3,。。。7),输出对应的星期一,星期二    Scanner sc = new Scanner(System.in);    System.out.println("输入一个星期数(1-7):");    int week = sc.nextInt();    switch(week) {      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;    }    System.out.println("结束");  }}

案例:季节输出,输入月份数字,输出对应季节

用到了case穿透,例如1,2,12月输出都是冬季,所以简洁表达用到了case穿透

import java.util.Scanner;public class JIjie {  public static void main(String[] args) {    System.out.println("开始");    //case穿透来表达月份代表的季节    Scanner sc = new Scanner(System.in);    System.out.println("输入一个月份:");    int week = sc.nextInt();        switch(week) {      case 1:      case 2:              case 12:        System.out.println("冬季");        break;      case 4:        case 5:      case 3:        System.out.println("春季");        break;      case 8:        case 7:      case 6:        System.out.println("夏季");        break;        case 9:        case 10:      case 11:        System.out.println("秋季");        break;        default: //当default在最后时,后面的break可省略        System.out.println("输入数字有误");    }    System.out.println("结束");  }}

3.循环结构

1.for循环

/*  for语句  格式:    for(初始化语句;条件判断语句;条件控制语句){      循环体语句;    }  执行流程:  1.执行初始化语句  2.执行条件判断语句,看结果时t还是f    如果是f循环结束    如果是t,继续执行  3.执行循环体语句  4.执行条件控制语句  5.回到2继续*/public class Forxunhuan {  public static void main(String[] args) {    //需求:在控制台输出5次 Helloworld    for(int i=1; i<=5; i++) {      System.out.println("Helloworld");    }  }}
/*  输出数据  需求控制台输出1——5,5——1*/public class SHUjushuru31 {  public static void main(String[] args) {    //需求输出1——5    for(int i=1;i<=5;i++) {      System.out.println(i);    }        //需求输出5——1    for(int i=5;i>=1;i--) {      System.out.println(i);    }  }}

案例:求和,求1到5的数据和

/*  求和  需求:求1——5的数据和,并且有控制台输出*/public class qiuhe {  public static void main(String[] args){    //求和的最终结果必须要保存起来,需要定义一个变量,用于保存求和结果,初始值0    int sum = 0;    //从1开始到5结束,使用循环结构完成    for(int i=1;i<=5;i++) {      //将反复进行的事情写入循环结构内部,此处反复进行的事情是将数据i加到用于保存最终的求和变量sum中      sum +=i;      /*        sum +=i相当于 sum = sum+i        第一次:sum = sum+i=0+1=1;        第二次:sum = sum+i=1+2=3;        第三次:sum = sum+i=3+3=6;      */    }    //当执行完毕时,将最终结果打印出来    System.out.println("1——5的数据和是:" + sum);  }}

案例:求1到100的偶数和

/*  求1到100的偶数和*/public class JIouqiuhe {  public static void main(String[] args) {    int sum =0;    for(int i =1;i<=100;i++) {      if(i%2 == 0) { //对100内的偶数求和,需要对求和操作        sum +=1;      }    }    //循环结束,输出    System.out.println("100以内偶数和:" + sum);  }}

案例:输出水仙花

特点要输出个位,十位,百位上的数字

c870d1ccd069cf69ed2d1d16f8c008ab.png

/*  水仙花  需求:  1.在控制台输出所有水仙花数      2.统计水仙花个数*/public class SHUIxianhua {  public static void main(String[] args) {    //定义变量count,用于保存水仙花数的数量,初始值为0    int count = 0;    //输出水仙花必然用到循环,遍历所有三位数,从100开始到999结束    /*for(int i=100; i<=999; i++) {          } i<=999;和i<1000两种效果一样 */    for(int i=100; i<1000; i++) {      //计算之前获取三位数每个位上的值      int ge = i%10;      int shi = i/10%10; //先对10整除结果再对10取余得到十位上的数字      int bai = i/10/10%10;      //判定条件是将三位数中每个数值取出,计算立方和与原始数字比较是否相等      if(ge*ge*ge + shi*shi*shi + bai*bai*bai == i) {        //如果满足条件做count++        count++;        //输出满足条件数字就是水仙花        System.out.println(i);      }    }    //打印出水仙花数量    System.out.println("水仙花共有" + count + "个");  }}

2.while循环

/*  While循环  基本格式    while(条件判断语句) {      循环体语句;    }  完整格式    初始化语句;    while(条件判断语句) {      循环体语句;      条件控制语句;    }  执行流程:    1.执行初始化语句    2.执行条件判断语句,看结果是t还是f      如果是f循环结束      如果是t继续执行    3.执行循环体语句    4.执行条件控制语句    5.回到2继续*/public class Whilexunhuan {  public static void main(String[] args) {    //需求输出5次helloworld    //用for循环写    for(int i=1; i<=5; i++) { //条件控制语句      System.out.println("helloworld"); //循环体语句    }    System.out.println("************");    //用while实现    int j =1;    while(j<=5) {      System.out.println("helloworld");      j++;    }  }}

案例:折叠纸张达到珠峰高度

不知道折叠多少次,所以适合用while循环

/*  纸张对折多少次厚度达到珠峰高度,每对折一次厚度是原来两倍*/public class ZHUMUfeng {  public static void main(String[] args) {    //定义一个计数器,初始值为0    int count =0;    //定义纸张厚度    double paper = 0.1;    //定义珠峰高度    int zf = 8844430;    //折叠纸张,不知道折叠多少次,所以适合用while循环    //折叠过程中纸张厚度大于珠峰高度就停止,因此继续执行的要求就是纸张厚度小于珠峰高度    while(paper <= zf) {      //循环的执行过程每次折叠纸张,纸张厚度加倍      paper *=2;      //在循环中累加,对应折叠了多少次      count++;    }    //打印计数器值    System.out.println("需要折叠"+ count+"次");  }}

3.do...while循环

/*  do while语句格式    do{      循环体语句;    }while(条件判断语句);      完整格式:    初始化语句    do{      循环体语句;      条件控制语句;    }while(条件判断语句);  执行流程:    1.执行初始化语句    2.执行循环体语句    3.执行条件控制语句    4.执行条件判断语句,看结果是t还是f      如果是f,循环结束      如果是t,继续执行    5.回到2继续*/public class DOwhile {  public static void main(String[] args) {    //需求输出5次helloworld    for(int i = 1;i<=5;i++) {      System.out.println("helloworld");    }    System.out.println("**********");    //用do while循环    int j =1;    do{      System.out.println("helloworld");      j++;    }while(j<=5);  }}

三种循环区别

5279c902a21eb77172378fd40f70b4bb.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值