• 牛客网刷题——JAVA


    在这里插入图片描述

    作者简介: 博主在读计科双非本科,目前大二,正在学习JAVA,数据库,操作系统,计算机网络,数据结构,JAVA Web等…
    个人主页:熬夜磕代码丶
    作品专栏: java se
    我变秃了,也变强了
    给大家介绍一款程序员必备刷题平台——牛客网
    点击注册一起刷题收获大厂offer吧
    在这里插入图片描述

    一、二进制序列

    获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列

    public static void main(String[] args) {
            //获取二进制的奇偶位
            Scanner scanner = new Scanner(System.in);
            int n = scanner.nextInt();
            System.out.print("偶数位: ");
            for (int i = 31; i >= 1; i-=2) {
                int bit = 0;
                bit = (n>>i)%2;
                System.out.print(bit+" ");
            }
            System.out.println();
            System.out.print("奇数位: ");
            for (int i = 30; i >= 0; i-=2) {
                int bit = 0;
                bit = (n>>i)%2;
                System.out.print(bit+" ");
            }
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    在这里插入图片描述

    二、模拟登陆

    编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输 入,最多输入三次。三次均错,则提示退出程序

    public static void main(String[] args) {
        //模拟三次密码输入
        Scanner scanner = new Scanner(System.in);
        String passWord = "jindachang";
        int i = 0;
        while(i < 3) {
            i++;
            String passWord1 = "";
            System.out.println("请输入密码: ");
            passWord1 = scanner.nextLine();
            if(passWord.equals(passWord1)) {
                System.out.println("登录成功");
                break;
            }
        }
        if(i == 3) {
            System.out.println("输入密码超过三次,退出程序");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    在这里插入图片描述
    在这里插入图片描述

    三、输出一个整数的每一位

    输出一个整数的每一位,如:123的每一位是3,2,1

    public static void main11(String[] args) {
        //输出整数的每一位
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        System.out.print(n+"的每一位为: ");
        while(n > 0) {
            System.out.print(n % 10 + " ");
            n /= 10;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述

    四、输出乘法口诀表

    输出n*n的乘法口诀表,n由用户输入

    public static void main(String[] args) {
            //n*n乘法表
            Scanner scanner = new Scanner(System.in);
            int n = scanner.nextInt();
            for (int i = 1; i <= n; i++) {
                for (int j = 1; j <= i; j++) {
                    System.out.print(j+" * "+i+" = "+i*j+" ");
                }
                System.out.println();
            }
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述

    五、打印 X 图形

    KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“”组成的X形图案。
    输入描述:
    多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。
    输出描述:
    针对每行输入,输出用“
    ”组成的X形图案。

    在这里插入图片描述

    public static void main(String[] args) {
            //输出X图
            Scanner scan = new Scanner(System.in);
            while(scan.hasNextInt()) {
                int n = scan.nextInt();
                for (int i = 0; i < n; i++) {
                    for (int j = 0; j < n; j++) {
                        if(i == j ||i + j == n-1) {
                            System.out.print("*");
                        }else {
                            System.out.print(" ");
                        }
                    }
                    System.out.println();
                }
            }
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    在这里插入图片描述

    六、水仙花数

    求出0~n之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本 身,如;153=13+53+3^3,则153是一个“水仙花数“。)

    public static void main(String[] args) {
            //求100 - n之间的水仙花数
            Scanner scanner = new Scanner(System.in);
            int n=scanner.nextInt();
            for (int i = 100; i <= n; i++) {
                int ret = i;
                int sum = 0;
                while(ret > 0) {
                    sum +=(ret%10)*(ret%10)*(ret%10);
                    ret /= 10;
                }
                if(sum == i) {
                    System.out.println(i);
                }
            }
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    在这里插入图片描述

    七、分数之和

    计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。

    public static void main(String[] args) {
            //计算分数的值
            double sum = 0;
            for (int i = 1; i <= 100; i++) {
                if(i%2 == 1) {
                    sum += 1.0/i;
                }else {
                    sum-=1.0/i;
                }
            }
            System.out.println(sum);
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在这里插入图片描述

    八、二进制1的个数

    求一个整数,在内存当中存储时,二进制1的个数

    public static void main(String[] args) {
            //统计二进制中1的个数
            Scanner scanner =new Scanner(System.in);
            int n = scanner.nextInt();
            int count = 0;//计数
            while(n>0) {
                if(n%2==1) {
                    count++;
                }
                n>>=1;
            }
            System.out.println(count);
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    在这里插入图片描述

  • 相关阅读:
    计算机毕业设计Javavue学习视频课程网站(源码+系统+mysql数据库+lw文档)
    无人机基础知识:多旋翼无人机系统基本组成
    暂存更改 切换分支 git
    计算机视觉系列-轻松掌握 MMDetection 中常用算法 :Cascade R-CNN(三)
    H3C交换机的40G堆叠线 ,可以插在普通光口做堆叠吗?
    太烂的牌也要打完只为自己也不是为了其他什么原因。
    2021 ICPC 澳门站G Cyclic Buffer (特殊的状压dp)
    一文看懂25个神经网络模型,神经网络模型结构图
    #Day Day Plan# 《NCB_PCI_Express_Base 5.0.1.0》pdf 译文笔记 模版
    记一次由JWT导致的绕过权限
  • 原文地址:https://blog.csdn.net/buhuisuanfa/article/details/126037791