JavaSE练习题

这篇博客包含一系列Java SE编程作业,包括设计登录界面、变量交换的多种方法、逻辑判断题以及位运算的应用。练习涵盖控制台交互、逻辑表达式的否定和位操作符的使用,适合初学者提升编程技能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作业:

打印如下界面:

第一个:
英雄联盟商城登录界面

			英雄联盟商城登录界面		
~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~

		1. 用户登录

		2. 新用户注册

		3. 退出系统

~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~
(温馨提示)请输入您的选项:

在这里插入图片描述

第二个:

		 英雄联盟商城首页
~ * ~ * ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~

	1. 进入英雄超市

	2. 休闲小游戏

	3. 退出登录

~ * ~ * ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~ *  ~
(温馨提示)请输入您的选项:

在这里插入图片描述

第三个:
英雄商城英雄列表

~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~

编号  姓名     昵称     价格  库存  描述

1     纳尔   迷失之牙  3500  100  丛林不会原谅盲目与无知

2     锐雯   放逐之刃  4000  100  她是残忍高效的战士  

3     薇恩   暗夜猎手  3500  100  这个世界不想人们想象的那么美好

4     扎克   生化魔人  3000  100  即使你没有脊柱,你也必须站起来

5     杰斯  未来守护者 2500  100  武装着睿智与魅力,你的选择没有错

~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~
(温馨提示)请输入您要购买的英雄编号:

在这里插入图片描述

第四个:
英雄商城购买英雄
英雄购买票据
~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ *

英雄名称:盲僧(史诗)
英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)
	攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125

英雄座右铭:一人之行可灭世,众人之勤可救世!
英雄价格:3000
活动折扣:9.5

插播广告:当风云变色,当流离失所,世界不再是旧日模样
你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡 
~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ *  
(温馨提示)请付款:

在这里插入图片描述

第五个:
英雄商城购买英雄
英雄购买票据
~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~

英雄名称:九尾妖狐(史诗)
英雄价格:10000
活动折扣:9.5

应付付款:9500
实际付款:10000
找零:500

插入广告:当风云变色,当流离失所,世界不再是旧日模样
你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡 
~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~
(温馨提示)按任意键返回上一级菜单:

在这里插入图片描述

作业:
控制台输入两个变量,交换这两个变量的值【至少使用两种方式完成】

第一种方法

import java.util.Scanner;

public class Test01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入两个数:");
        int a = sc.nextInt();
        int b = sc.nextInt();
        System.out.println("交换前: a = " + a + ",b = " + b);
        //定义一个变量存放a的值
        int temp = a;
        a = b;
        b = temp;
        System.out.println("交换后: a = " + a + ",b = " + b);
    }
}

在这里插入图片描述

第二种方法

import java.util.Scanner;

public class Test01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入两个数:");
        int a = sc.nextInt();
        int b = sc.nextInt();
        System.out.println("交换前: a = " + a + ",b = " + b);
        a = a + b;
        b = a - b;
        a = a - b;
        System.out.println("交换后: a = " + a + ",b = " + b);
    }
}

在这里插入图片描述

第三种方法

public class Test01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入两个数:");
        int a = sc.nextInt();
        int b = sc.nextInt();
        System.out.println("交换前: a = " + a + ",b = " + b);
        a = a ^ b;
        b = a ^ b;
        a = a ^ b;
        System.out.println("交换后: a = " + a + ",b = " + b);
    }
}

在这里插入图片描述

作业6:下列哪一项是“4是奇数或-9为正数”的否定( C)
A、4是偶数或-9不是负数
B、4是奇数或-9不是负数
C、4是偶数和-9是负数
D、4是奇数和-9不是负数

作业7:如果A是“10110110”,B是“11100000”,C是“10100000”,下面成立的是( D)
A、 C=A|B
B、 C=~A
C、 C=~B
D、 C=A&B

作业8:判断一个整数是奇数还是偶数,至少有两种方式实现(位运算已经讲解的话)

import java.util.Scanner;

public class Test02 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数字:");
        int n = sc.nextInt();
        //第一种方法
        System.out.println("---第一种方法---");
        if (n % 2 == 0){
            System.out.println(n + "是偶数");
        }else {
            System.out.println(n + "是奇数");
        }
        //第二种方法——位运算
        System.out.println("---第二种方法---");
        int i = n & 1;
        if (i == 0){
            System.out.println(n + "是偶数");
        }else {
            System.out.println(n + "是奇数");
        }
    }
}

作业9:输入一个数,判断这个是2的指数。


import java.util.Scanner;

public class Test03 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数字:");
        int n = sc.nextInt();
        int i = n & (n - 1);
        if (i == 0){
            System.out.println(n + "是2的指数");
        }else {
            System.out.println(n + "不是2的指数");
        }
    }
}

在这里插入图片描述
word作业
1.在这里插入图片描述
在这里插入图片描述

2.在这里插入图片描述

3.在这里插入图片描述
在这里插入图片描述
4.
在这里插入图片描述

public class Demo04 {
    public static void main(String[] args) {
        double time = 45.5 / 60;        //小时
        double distance = 14 / 1.6;     //路程(英里)
        double speed = distance / time; //平均速度(英里/小时)
        System.out.println("平均速度为:" + speed);
    }
}

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

public class Demo04 {
    public static void main(String[] args) {
        double time = 1 + 40.58 / 60;        //小时
        double distance = 24 * 1.6;     //路程(公里)
        double speed = distance / time; //平均速度(公里/小时)
        System.out.println("平均速度为:" + speed);
    }
}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

8.在这里插入图片描述
9.
在这里插入图片描述

import java.util.Scanner;

public class Demo09 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入摄氏温度:");
        double s = sc.nextDouble();
        double h = (9.0 / 5) * s + 32;
        System.out.println("转换为华氏温度为:" + h);
    }
}

在这里插入图片描述

10.在这里插入图片描述

import java.util.Scanner;

public class Demo10 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入圆柱体的半径:");
        double r = sc.nextDouble();
        System.out.println("请输入圆柱体的高:");
        double h = sc.nextDouble();
        double area = r * r * Math.PI;
        double volume = area * h;
        System.out.println("圆柱体的底面积为:" + area);
        System.out.println("圆柱体的体积为:" + volume);
    }
}

在这里插入图片描述

11.在这里插入图片描述

import java.util.Scanner;

public class Demo11 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个0-1000的整数:");
        int n = sc.nextInt();
        if (n < 10){
            System.out.println("各位数字之和为:" + n);
        }else if(n < 100){
            int ge = n % 10;
            int shi = n / 10;
            System.out.println("各位数字之和为:" + (ge + shi));
        }else if (n < 1000){
            int a = n % 10;
            int b = n / 10 % 10;
            int c = n / 100;
            System.out.println("各位数字之和为:" + (a + b + c));
        }else{
            System.out.println("请输入0-1000之内的整数!");
        }
    }
}

在这里插入图片描述

12.在这里插入图片描述

在这里插入图片描述

import java.util.Scanner;

public class Demo13 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入水的重量(Kg):");
        double weight = sc.nextDouble();
        System.out.println("请输入水的初始温度(摄氏度):");
        double start = sc.nextDouble();
        System.out.println("请输入水的最终温度(摄氏度):");
        double end = sc.nextDouble();
        double q = weight * (end - start) * 4184;
        System.out.println("将" + weight + "Kg的水从" + start +
                "度加热到" + end + "度需要的能量为:" + q + "焦耳") ;
    }
}

在这里插入图片描述

在这里插入图片描述

import java.util.Scanner;

public class Demo14 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个月份:");
        int month = sc.nextInt();
        double sum = 0;
        for (int i = 1; i <= month; i++){
            sum = (sum + 100) * (1 + 0.00417);
        }
        System.out.println("第" + month + "月的账户值为:" + sum);
    }
}

在这里插入图片描述

15.在这里插入图片描述

import java.util.Scanner;

public class Demo15 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入第一个点的坐标(x1,y1):");
        double x1 = sc.nextDouble();
        double y1 = sc.nextDouble();
        System.out.println("请输入第二个点的坐标(x2,y2):");
        double x2 = sc.nextDouble();
        double y2 = sc.nextDouble();
        double a = ((x2 - x1) * (x2 - x1)) + ((y2 - y1) * (y2 - y1));
        double distance = Math.pow(a, 0.5);
        System.out.println("(" + x1 + "," + y1 + ")" +
                "(" + x2 + "," + y2 + ")两点间的距离为:" + distance);
    }
}

在这里插入图片描述

16.在这里插入图片描述

import java.util.Scanner;

public class Demo16 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入三角形的第一个点(x1,y1):");
        double x1 = sc.nextDouble();
        double y1 = sc.nextDouble();
        System.out.println("请输入三角形的第二个点(x2,y2):");
        double x2 = sc.nextDouble();
        double y2 = sc.nextDouble();
        System.out.println("请输入三角形的第三个点(x3,y3):");
        double x3 = sc.nextDouble();
        double y3 = sc.nextDouble();
        double side1 = sideLength(x1, y1, x2, y2);
        double side2 = sideLength(x1, y1, x3, y3);
        double side3 = sideLength(x2, y2, x3, y3);
        System.out.println(side1 + " " +side2+ " " +side3);
        double s = (side1 + side2 + side3) / 2;
        double target = s * (s - side1) * (s - side2) * (s - side3);
        double area = Math.pow(target, 0.5);
        System.out.println("三角形的面积为:" + area);
    }

    public static double sideLength(double x1 ,double y1, double x2, double y2){
        double a = Math.pow((x1 - x2), 2) + Math.pow((y1 - y2), 2);
        double distance = Math.pow(a, 0.5);
        return distance;
    }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值