12-26第三章章节练习

第一题,代码如下:

 1 package com.kk;
 2 import java.util.Scanner;
 3 public class Lx301 {
 4     public static void main(String[]agrs) {
 5         Scanner input=new Scanner(System.in);
 6         int max=0;
 7         int min=0;
 8         int num=0;
 9         do{
10             System.out.println("请输入一个整数(输入0结束):");
11             num=input.nextInt();
12             if(min==0) {
13                 min=num;
14             }
15             if(max==0) {
16                 max=num;
17             }
18             else if(num>max&&num!=0) {
19                 max=num;
20             }
21             else if(num<min&&num!=0) {
22                 min=num;
23             }        
24         }while(num!=0); 
25         System.out.println("最大值是:"+max);
26         System.out.println("最小值是:"+min);
27         
28     }
29 }

运行结果如下:

第二题,代码如下

 1 package com.kk;
 2 import java.util.Scanner;
 3 public class Lx302 {
 4     public static void main(String[]agrs) {
 5         Scanner input=new Scanner(System.in);
 6         
 7         int num=0;
 8         do{
 9             System.out.println("请输入数字1-7(输入0结束):");
10             num=input.nextInt();
11             switch(num) {
12                 case 1:
13                     System.out.println("MON");
14                     break;
15                 case 2:
16                     System.out.println("TUE");
17                     break;
18                 case 3:
19                     System.out.println("WED");
20                     break;
21                 case 4:
22                     System.out.println("THU");
23                     break;
24                 case 5:
25                     System.out.println("FRI");
26                     break;
27                 case 6:
28                     System.out.println("SAT");
29                     break;
30                 case 7:
31                     System.out.println("SUN");
32                     break;
33                 default:
34                     if(num!=0) {
35                         System.out.println("输入错误,请重新输入");
36                         break;
37                     }
38             }                
39         }while(num!=0);
40         System.out.println("程序结束,谢谢使用");
41 
42     }
43 }

结果如下:

 

第三题:1.使用switch+if选择,使用do-while循环错误输入,代码如下:

 1 package com.kk;
 2 import java.util.Scanner;
 3 public class Lx303 {
 4     public static void main(String[] args) {
 5         
 6         Scanner sc=new Scanner(System.in);
 7         int month=0;
 8         int money=5000;
 9         int num=0;
10         double price=0;
11         do {
12             System.out.println("请输入出行的月份(1~12月):");
13             month=sc.nextInt();
14             //判断月份
15             switch(month) {
16                 //淡季
17                 case 1:
18                 case 2:
19                 case 3:
20                 case 11:
21                 case 12:
22                     System.out.println("请问您选择头等舱还是经济舱?头等舱输入1,经济舱输入2");                
23                     num=sc.nextInt();
24                     if(num==1) {
25                         price=money*0.5;
26                         System.out.println("您的机票价格为:"+price);
27                     }
28                     if(num==2) {
29                         price=money*0.4;
30                         System.out.println("您的机票价格为:"+price);
31                     }
32                     break;
33                 //旺季
34                 case 4:
35                 case 5:
36                 case 6:
37                 case 7:
38                 case 8:
39                 case 9:
40                 case 10:
41                     System.out.println("请问您选择头等舱还是经济舱?头等舱输入1,经济舱输入2");    
42                     num=sc.nextInt();
43                     if(num==1) {
44                         price=money*0.9;
45                         System.out.println("您的机票价格为:"+price);
46                     }
47                     if(num==2) {
48                         price=money*0.6;
49                         System.out.println("您的机票价格为:"+price);
50                     }
51                     break;
52                 //输入错误月份
53                 default:
54                     System.out.println("输入错误月份,请重新输入:");
55                     break;
56             }
57         }while(month>12||num>2);
58         
59     }
60 
61 }

结果如下:

第三题:2.使用if判断,再使用do-while循环错误输入,代码如下:

 1 package com.kk;
 2 
 3 import java.util.Scanner;
 4 
 5 public class Lx3031 {
 6 
 7     public static void main(String[] args) {
 8         Scanner sc=new Scanner(System.in);
 9         int month=0;
10         int money=5000;
11         int num=0;
12         
13         do {
14             System.out.println("请输入出行的月份(1~12月):");
15             month=sc.nextInt();
16             System.out.println("请问您选择头等舱还是经济舱?头等舱输入1,经济舱输入2");
17             num=sc.nextInt();
18             //判断是否为旺季
19             if(month>=4&&month<=10) {
20                 //判断选择舱位的折扣,并输出结果
21                 if(num==1) {
22                     System.out.println("您的机票价格为"+money*0.9);
23                 }else if(num==2){
24                     System.out.println("您的机票价格为"+money*0.6);
25                 }else {
26                     System.out.println("输入错误,请重新输入2");//判断用户舱位是否输入错误
27                 }
28             }else if((month>0 && month<4) || (month>10 && month<13)){
29                 if(num==1) {
30                     System.out.println("您的机票价格为"+money*0.5);
31                 }else if(num==2){
32                     System.out.println("您的机票价格为"+money*0.4);
33                 }else {
34                     System.out.println("输入错误,请重新输入2");//判断用户舱位是否输入错误
35                 }
36             }else {
37                 System.out.println("输入错误,请重新输入");//判断用户月份是否输入错误
38             }
39         }while(month>12||num>2);
40         
41     }
42 
43 }

结果如下:

猜你喜欢

转载自www.cnblogs.com/Fkkkkk/p/10177679.html