编程练习(2)

需求说明
循环输入商品编号,显示对应的商品价格
循环输入商品编号和购买数量
当输入n时结账
结账时计算应付金额并找零

这里写图片描述

这里写图片描述

import java.util.Scanner;
public class test4{
    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        boolean flag1=true;     
        while(flag1==true){
        System.out.println("MyShopping管理系统>购物结算");
        System.out.println("***************************");
        System.out.println("请选择购买的商品编号:");
        System.out.println("1.T恤  2.网球鞋  3.网球拍");
        System.out.println("***************************");
        boolean flag3=true;
        while(flag3==true){
        System.out.print("请输入商品编号:");
        int select1=in.nextInt();
        System.out.print("请输入购买数量:");
        int select2=in.nextInt();
        switch(select1){
            case 1:
                System.out.println("T恤 ¥245.0  数量"+select2+"\t合计¥"+(245.0*select2));
                flag3=false;
                break;
            case 2:
                System.out.println("网球鞋 ¥570.0  数量"+select2+"\t合计¥"+(570.0*select2));
                flag3=false;
                break;
            case 3:
                System.out.println("网球拍 ¥320.0  数量"+select2+"\t合计¥"+(320.0*select2));
                flag3=false;
                break;
                default:
                    System.out.println("输入无效");
            }
        }
            boolean flag2=true;
            while(flag2==true){
            System.out.print("是否继续(y/n)");
            String ss=in.next();
            switch(ss){
                case "n":
                    System.out.println("折扣:0.8");
                    System.out.println("应付金额:392.0");
                    System.out.println("实付金额:400");
                    System.out.println("找钱:8.0");
                    flag1=false;
                    flag2=false;
                    break;
                case "y":
                flag2=false;
                    break;          
                default:
                    System.out.println("输入无效");

        }
    }
        }
    }
}

需求说明
如果用户输入错误,可以重复输入直到输入正确,执行相应的操作后退出循环
这里写图片描述

import java.util.Scanner;
public class test5{
    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        boolean flag=true;

        while(flag==true){
        System.out.println("欢迎使用MyShopping管理系统");
        System.out.println("***************************");
        System.out.println("1.客户信息管理");
        System.out.println("2.购物结算");
        System.out.println("3.真情回馈");
        System.out.println("4.注销");
        System.out.println("***************************");
        boolean flag2=true;
        while(flag2==true){
        System.out.print("请选择输入数字:");
        int select=in.nextInt();
        switch(select){
            case 1:
                System.out.println("执行客户信息管理");
                flag2=false;
                break;
            case 2:
                System.out.println("执行购物结算");
                flag2=false;
                break;
            case 3:
                System.out.println("执行真情回馈");
                flag2=false;
                break;
            case 4:
                System.out.println("程序结束");
                flag2=false;
                flag=false;
                break;
            default:
                System.out.println("输入错误,请重新输入数字:");
            }
        }

        }
    }
}

需求说明
实现整数反转

import java.util.Scanner;
import java.util.Arrays;
public class test6{
    public static void main(String[] args){ 
        Scanner in=new Scanner(System.in);
        System.out.print("请输入整数:");
        String val=in.nextLine();
        char[] str=val.toCharArray();
        char[] ss=new char[str.length];
        int j=0;
        for(int i=str.length-1;i>=0;i--){
            ss[j]=str[i];
            j++;
    }
    System.out.print("反转后的整数是:  ");
    for(int t=0;t<ss.length;t++){
        System.out.print(ss[t]);
    }
        }

}

需求说明
用户登录验证,验证次数最多3次
这里写图片描述

这里写图片描述

这里写图片描述

import java.util.Scanner;
public class test14{
    public static void main(String[] args){
        login(3);
    }
        public static void login(int count){
        if(count>0){
        System.out.println("你还有"+count+"次机会");
        Scanner in=new Scanner(System.in);
        System.out.print("请输入用户名:");
        String admin=in.nextLine();
        System.out.print("请输入密码:");
        String pass=in.nextLine();
        //String[] arr1=new String[]{"jim"};
        //String[] arr2=new String[]{"123456"};
        //以上方式也可以,但是通常一个数据不用
        if("jim".equals(admin)&&"123456".equals(pass)){
        //if(admin.equals(arr1[0])&&pass.equals(arr2[0])){
            System.out.println("欢迎登陆MyShopping系统!");
                }else{
                    System.out.println("输入错误!请重新登陆");
                    login(--count); //递归调用      
                }
        }
    }
}

需求说明
有一组学员的成绩{99,85,82,63, 60},将它们按升序排列。要增加一个学员的成绩,将它插入成绩序列,并保持升序
这里写图片描述

package test1;
import java.util.Scanner;
public class Game5{
    public static void main(String[] args){ 
        int[] arr={99,85,82,63,60};
        Game5 aa=new Game5();
        int[] xx=aa.sort(arr);
        aa.Insert(xx); 
    }
    //冒泡排序
    public int[] sort(int[] str){
        int temp;
        for(int i=0;i<str.length-1;i++){
            for(int j=0;j<str.length-1-i;j++){
                if(str[j+1]<str[j]){
                    temp=str[j+1];
                    str[j+1]=str[j];
                    str[j]=temp;
                }
            }
        }
        //遍历输出
        for(int t=0;t<str.length;t++){
            System.out.print(str[t]);
            System.out.print("\t");
        }
        return str;
    }
    public void Insert(int[] str){
        int nums[]=new int[str.length+1];
        Scanner in=new Scanner(System.in);
        System.out.print("请输入新增成绩:");
        int xz=in.nextInt();
        //遍历原数组至新数组
        for(int i=0;i<str.length;i++){
            nums[i]=str[i];
        }

        int index=str.length;//插入的数组在新数组中的下标     
        //for循环遍历找到要插入数字的下标
        for(int j=0;j<nums.length;j++){
            if(xz<nums[j]){
                index=j;
                break;
            }
        }
        System.out.println("插入成绩的下标是:"+index);
        //将元素后移
        for(int s=nums.length-1;s>index;s--){
            nums[s]=nums[s-1];
        }
        nums[index]=xz;
        System.out.println("插入后的成绩信息是:");
        //遍历输出
        for(int t=0;t<nums.length;t++){
            System.out.print(nums[t]);
            System.out.print("\t");
        }
    }
}

需求说明
输出九九乘法表
这里写图片描述

public class test19{
    public static void main(String[] args){
        for(int i=1;i<=9;i++){
            for(int j=1;j<=i;j++){
                int sum=i*j;
                System.out.print(j+"*"+i+"="+sum);
                System.out.print("\t");
                }
                System.out.println("\n");
            }
        }

}

需求说明
从控制台输入直角三角形的高度
(行数)
每行 * 的数目依次为1、3、5、7…
这里写图片描述

import java.util.Scanner;
public class test22{
    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        System.out.print("请输入直角三角形的行数:");
        int num=in.nextInt();
        for(int i=0;i<num;i++){
        for(int j=1;j<=2*i+1;j++){
            System.out.print(" *");
            }
            System.out.println("\n");
        }
        }
}

需求说明
有5家衣服专卖店,每家最多购买3件。用户可以选择离开,可以买衣服
最后打印总共买了几件衣服
这里写图片描述

import java.util.Scanner;
public class test23{
    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        int j=0;
        for(int i=0;i<5;i++){
            System.out.println("欢迎光临第"+(i+1)+"家专卖店");
            System.out.print("要离开吗(y/n)?:");
            String y=in.nextLine();
            switch(y){
                case "y":
                System.out.println("离店结账\n");
                break;
                case "n":
                System.out.println("买了一件衣服");
                j++;
                break;
                default:
                System.out.println("输入无效!");
                }

            }
            System.out.println("总共买了"+j+"件衣服");
        }
}

需求说明
有3名顾客去商场购物,每人买3件商品
商品单价300元以上的商品享受8折优惠
请统计每人享受打折优惠的商品的数量

这里写图片描述

import java.util.Scanner;
public class test24{
    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        for(int i=1;i<=3;i++){
            System.out.println("请输入第"+i+"个人所购的三件商品的价格:");
            int k=0;
            for(int j=1;j<=3;j++){
                double price=in.nextDouble();
              if(price>300) k++;
                }
                System.out.println("第"+i+"个人共有"+k+"件商品享受8折优惠");

        }

        }
    }
  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值