几个简单的Java小练习

这里是我最近学习Java遇见的几个比较棘手的小练习,分享一下

1.习题一

用三种方法实现将两个数交换。

import java.util.Scanner;

public class One {
    public static void main(String[] args) {
        Scanner p=new Scanner(System.in);
        System.out.println("请输入一个数:a=");
        int a=p.nextInt();
        System.out.println("请输入另一个数:b=");
        int b=p.nextInt();
        System.out.println("将两个数进行交换");
        way1(a,b);
        way2(a,b);
        way3(a,b);
    }
    //方法1
    public static void way1(int a,int b){
        int s;
        s=a;
        a=b;
        b=s;
        System.out.println("交换后a="+a);
        System.out.println("交换后b="+b);
    }
    //方法二
    public static  void way2(int a,int b){
        int s;
        s=a+b;
        a=s-a;
        b=s-b;
        System.out.println("交换后a="+a);
        System.out.println("交换后b="+b);
    }
    //方法三
    public static void way3(int a,int b){
        a=a^b;//异或运算
        b=a^b;
        a=a^b;
        System.out.println("交换后a="+a);
        System.out.println("交换后b="+b);
    }
}

2.习题二

用”*“拼出一个等腰三角形

public class Job8 {
    public static void main(String[] args) {
        for(int i=1;i<=10;i++){
            for (int t=1;t<=10-i;t++){
                System.out.print(" ");//前面的空白区域
            }
            for(int j=1;j<=i;j++){
                System.out.print("* ");
                //'*'后面加个空格,形成应该等腰三角形
            }
            System.out.println();
        }
    }
}

运行结果:
在这里插入图片描述

3.习题三

猜数字游戏:
随机产生0~9之间的数字
用户进行猜,只能猜3次

public class Six {
    public static void main(String[] args) {
        int max = 9, min = 0,time;
        int num = (int) (Math.random() * 10);
        System.out.println("数字已生成,请输入你猜的数字:");
        Scanner s = new Scanner(System.in);
        for (time = 3; time > 0; time--) {
            int a = s.nextInt();
            if(a==num){
                System.out.println("你太天才了,猜对了");
                return;
            }
            else if(a>num&&a<max){
                max=a;
                System.out.println("你输入的大了,应该在"+min+"~"+max+"之间");
            }
            else if (a<num&&a>min) {
                min=a;
                System.out.println("你输入的小了,应该在"+min+"~"+max+"之间");
            }
        }
        System.out.println("很遗憾,你没有猜出来");
    }
}

4.习题四

训练要点:
while循环结构
程序调试
需求说明:
循环输入商品编号,显示对应的商品价格
T恤的价格:245 网球鞋的价格: 570 网球拍:300
输入“n”结束循环
实现思路:
1、声明变量
2、循环体
3、循环条件
效果图:
在这里插入图片描述

import java.util.Scanner;

public class Seven {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("************************************\n" +
                "请选择购买的商品编号:\n" + "1.T恤\t2.网球鞋\t3.网球拍\n" + "************************************");
        int sum=0;
        while (true) {
            System.out.println("请输入商品编号:");
            int num = s.nextInt();
            System.out.println("请输入购买数量:");
            int buy = s.nextInt();

            switch (num) {
                case 1:
                    sum+=(245.0*buy);
                    System.out.println("T恤245.0元\t"+"数量:"+buy+"\t"+"合计"+(245.0*buy)+"元");
                    break;
                case 2:
                    sum+=(570.0*buy);
                    System.out.println("网球鞋570.0元\t"+"数量:"+buy+"\t"+"合计"+(570.0*buy)+"元");
                    break;
                case 3:
                    sum+=(300.0*buy);
                    System.out.println("网球拍300.0元\t"+"数量:"+buy+"\t"+"合计"+(300.0*buy)+"元");
                    break;
            }
            System.out.println("是否继续(y/n):");
            String str=s.next();
            if(str.equals("n")){//str=n
                break;
            }
        }
        System.out.println("折扣:0.8\n"+"实付金额:"+sum+'\n'+"实付金额:");
        int money=s.nextInt();
        System.out.println("找钱:"+(money-sum));
    }
}

5.小结

在这些Java小练习中,主要涉及到了if语句和循环的使用。通过这些练习,我总结了以下经验:
1.理解循环结构:在编写循环代码之前,确保理解循环的基本结构,包括循环条件和循环体。
2.避免无限循环:在编写循环时,要确保循环条件能够最终满足,否则将导致无限循环。
3.合理使用循环:在适当的情况下使用循环,以简化代码并提高效率。
调试技巧:在编写和调试循环代码时,可以使用断点和单步执行等方法来帮助定位问题。
通过这些经验和技巧的总结,我希望能够帮助其他初学者更好地掌握Java中的循环语句。这些练习让我更加熟悉Java的基本语法和编程技巧,为今后的学习打下了坚实的基础。在未来的学习中,我将继续努力,通过更多的实践来提高自己的编程能力。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值