java中流程控制语句练习题

java中流程控制语句练习题,第1张

资源下载地址:https://download.csdn.net/download/weixin_47994845/85209818
代码地址:https://github.com/JordanFoever/zigezhengkaoshi

if语句

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -9:45
 */

public class Exer1 {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.println("请输入年份");
        while (true) {
            int year = sc.nextInt();
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                System.out.println("你输入的是闰年");
                break;
            }else {
                System.out.println("你输入的是平年");
                System.out.println("请重新输入年份");
            }
        }

    }
}

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -10:20
 */
public class Exer2 {
    public static void main(String[] args) {
        System.out.println("请输入一个数");
        Scanner sc= new Scanner(System.in);
        int i = sc.nextInt();
        if(i>5) System.out.println(i+"你输入的数大于5");
        else  if(i<=5&&i>3) System.out.println(i+"这个数小于等于5并且大于2");
        else System.out.println("*");
    }
}


方法一

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -10:39
 *
 * 猜数字(升级版)
 */
public class Exer5 {
    // 初始化一些数
    static int left = 0;  //左边的范围
    static int right = 31; //右边的范围
    static int max = 0;  //大的数
    static int min = 0; //小的数

    public static void main(String[] args) {
        System.out.println("请输一个0-31之间的数");
        Scanner sc = new Scanner(System.in);
        int i = sc.nextInt();
        System.out.println("请输入另一个数");
        while (true){
            int j = sc.nextInt();
            if(j>i){
                // 如果输入的数大的话,先将其存在大的数里面
                max = j;
                System.out.println("你输入的数大了,请输入"+left+"到"+max+"之间的数");
                right  = max;
                min = left;
            }else if (j<i){
                min = j;
                System.out.println("你输入的数小了"+min+"到"+right+"之间的数");
                left = min;
                max = right;
            }else {
                System.out.println("输入正确");
                break;
            }
        }
    }
}


方法二

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -11:12
 */
public class Exer5_1 {
    public static void main(String[] args) {
        int a = 0;
        int b = 0;
        System.out.println("请输一个0-31之间的数");
        Scanner sc = new Scanner(System.in);
        int i = sc.nextInt();
        System.out.println("请输入另一个数");
        while (true){
            int j = sc.nextInt();
            if(j>i){
                b = j;
                // 如果输入的数大的话,先将其存在大的数里面
                System.out.println("你输入的数大了,请输入"+a+"到"+b+"之间的数");
            }else if (j<i){
                a = j;
                System.out.println("你输入的数小了"+a+"到"+b+"之间的数");
            }else {
                System.out.println("输入正确");
                break;
            }
        }
    }
}

练习题

1

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -11:15
 */
public class Test1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入两个数");
        int a = sc.nextInt();
        int b = sc.nextInt();
        if(b%a==0||a+b>1000) System.out.println(a);
        else System.out.println(b);
    }
}

2

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -11:19
 */
public class Test2 {
    public static void main(String[] args) {
        System.out.println("请输入三角形的三条边");
        Scanner scanner = new Scanner(System.in);

        int a = scanner.nextInt();
        int b = scanner.nextInt();
        int c = scanner.nextInt();

        if(a+b>c&&a+c>b&&b+c>a&&a-b<c&&a-c<b&&b-c<a){
            if(a==b||a==c||b==c){
                System.out.println("你输入的是等腰三角形");
                if(a==b&&b==c){
                    System.out.println("正三角形");
                }
            }
             else if((a*a+b*b == c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
                System.out.println("直角三角形");
             else if(a * a > b * b + c * c || b * b > a * a + c * c || c * c > a * a + b * b)
                System.out.println("钝角三角形");
             else
                System.out.println("锐角三角形");
        }else {
            System.out.println("不能构成三角形");
        }
    }
}


3

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -11:37
 * 

*

* 输入三个数比较大小 */ public class Test3 { public static void main(String[] args) { System.out.println("请输入三个数"); Scanner sc = new Scanner(System.in); int[] a = new int[3]; int max = 0; for (int i = 0; i < a.length; i++) { a[i] = sc.nextInt(); } for (int value : a) { if (value > max) { max = value; } } System.out.println("最大值是"+max); } }

4

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -11:53
 *
 *
 * 输入性别,体重,身高,判断身材
 */
public class Test4 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入性别:");
        String sex = sc.next();
        System.out.print("请输入身高:");
        double height = sc.nextDouble();
        System.out.print("请输入体重:");




    }
}

5

package Test1;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -13:48
 */
public class Test5 {
    public static void main(String[] args) {
        System.out.println("请输入一个数");
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        if(a%2==0){
            System.out.println("是偶数");
        }else{
            System.out.println("是奇数");
        }
    }
}

for语句

package Test2;

/**
 * @author weijiangquan
 * @date 2022/4/23 -13:52
 */
public class Exer1 {
    public static void main(String[] args) {
        for(int i=0;i<5;i++){
            System.out.println((i+2)+"\t"+i+3+"\t"+i+4+"\t"+(i+3)*(i+3+i+2)+"\t"+(i+3)*(i+4));
        }
    }


}


方法一

package Test2;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -15:15
 *
 * 输入一个数判断是不是素数
 */
public class Exer2 {
    public static void main(String[] args) {
       Scanner sc = new Scanner(System.in);
       while (true){
           System.out.print("请输入一个数");
           int a = sc.nextInt();
           boolean  flag = false;

           for(int i = 2;i<a;i++){
                flag = a%i==0?false:true;
                if(flag == false) break;;
           }
           if(flag==false) System.out.println("不是素数");
           else System.out.println("是素数");
       }
    }
}

方法二


    package Test2;
    /**
     * @author weijiangquan
     * @date 2022/4/23 -18:52
     */
    /*
    100000以内质数的输出
    质数:素数,只能被1和它本身整除的自然数。 ---->从2开始,到 n-1 结束,都不能被 n 整除。
    
    对 PrimeTest中的代码进行一个优化
    */
    //方式一:
    class Exer4{
        public static void main(String[] args) {
            //boolean isFlag = true;  //标识:i是否被j除尽 , 如果除尽修改其值
            long start = System.currentTimeMillis();
            //int count = 0;//记录质数的个数
            for (int i = 2;i <= 100000;i++){
                boolean isFlag = true;  //标识:i是否被j除尽 , 如果除尽修改其值
                //优化二:只对本身是质数的自然数有效。
                for(int j = 2;j <= Math.sqrt(i);j++){   // Math.sqrt(i)即 根号i
                //for(int j = 2;j < i;j++){
                    if(i % j == 0){  // i 被 j 除尽
                        isFlag = false;
                        break;//优化一:只对本身非质数的自然数有效。
                    }
                }
                if(isFlag == true){
                    System.out.println(i);
                    //count++;
                }
                //重置isFlag
                isFlag = true;
            }
            long end = System.currentTimeMillis();
            //System.out.println("质数的个数为:" + count);
            System.out.println("当前代码花费的时间是:" + (end - start));
        }
    }
    /* 正常输入:16565 毫秒
       将 isFlag 放到 for 循环里: 14234毫秒
       优化一: 内部for循环加上 break: 1694毫秒
       优化二: 判断j<根号i:485毫秒
    */
    /* 将输出方式改为记录个数:
        未优化:11361毫秒
        优化一break:1041毫秒
        优化二根号i:10毫秒!!
    */
    
    

package Test2;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -19:05
 *
 *
 * 水仙花数
 */
public class Exer5 {
    public static void main(String[] args) {
        System.out.print("请输入一个三位数:");
        Scanner sc = new Scanner(System.in);
        while (true){
            int a = sc.nextInt();
            int num1 = a%100%10; //个位
            int num2 = a%100/10; //十位
            int num3 = a/100;  //百位

            if(num1*num1*num1+num2*num2*num2+num3*num3*num3==a){
                System.out.println("你输入的数是水仙数");
                break;
            }else {
                System.out.println("不是水仙数");
                System.out.print("请重新再次输入");
            }
        }

    }
}

package Test2;

/**
 * @author weijiangquan
 * @date 2022/4/23 -19:16
 *
 * 九九乘法表
 */
public class Exer6 {
    public static void main(String[] args) {
        for(int i = 1;i<=9;i++){
            for (int j = 1;j<=i;j++){
                System.out.print(j+"*"+i+"="+i*j+"\t");
            }
            System.out.println();
        }
    }
}

switch

package Test3_switch;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -19:24
 *
 * 分数输出
 */
public class Exer1 {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
            System.out.println("输入一个分数");
            int score = sc.nextInt();

            int a = score/10;
            switch(a){
                case 10:
                case 9:
                    System.out.println("优秀");
                    break;
                case 8:
                    System.out.println("良好");
                    break;
                case 7:
                    System.out.println("中等");
                    break;
                case 6:
                    System.out.println("及格");
                    break;
                default:
                    System.out.println("不及格");
                    break;
            }
    }
}

package Test3_switch;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -19:33
 */
public class Exer2 {
    public static void main(String[] args) {
        int year,month;
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入年份");
        year = sc.nextInt();
        System.out.println("请输入一个月份");
        month = sc.nextInt();
        switch (month){
            case 1: case 3: case 5: case 7: case 8: case 10: case 12:
                System.out.println("31天");break;
            case 4: case 6: case 9: case 11:
                System.out.println("30天");break;
            case 2:
                if(year%4==0&&year%100!=0||year%400==0){
                    System.out.println("29天");
                }else {
                    System.out.println("28");
                }
                break;

        }
    }
}

package Test3_switch;

import java.util.Scanner;

/**
 * @author weijiangquan
 * @date 2022/4/23 -21:00
 *
 * 在java中switch的括号中可以使用字符串类型的  好多语言都不支持
 */
public class Exer3 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (true){
            System.out.print("请输入一个星期");
            String s = sc.next();
            // if(s=="退出")  这样写好像不行

            if(s.equals("退出")){
                break;
            }else {
                switch (s){
                    case "星期一":
                        System.out.println("Monday");
                        break;
                    case  "星期二":
                        System.out.println("Tuesday");
                        break;
                    case "星期三":
                        System.out.println("Wednesday");
                        break;
                    case "星期四":
                        System.out.println("Thursday");
                        break;
                    case "星期五":
                        System.out.println("Friday");
                        break;
                    case "星期六":
                        System.out.println("Saturday");
                        break;
                    case "星期日":
                        System.out.println("Sunday");
                        break;
                    default:
                        System.out.println("输入的不合法");
                        break;
                }
            }
        }


    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/729174.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存