题目:

设计超市商品管理系统,实现以下功能:

1.输入五种商品名称、价格和数量;

2.统计商品的总价格及平均价格,最高价和最低价;

3.按价格降序排序;

4.统计高于平均价格和低于平均价格的商品数量;

5.输入商品名称查询商品的价格和数量。

环境:

编译器:IDEA 2022 Community

JDK版本:java version "1.8.0_351"

源代码:

import java.util.Scanner;

class Goods{         //商品
    //数组的声明和初始化
     static String[] name =new String[6];         //商品名称
    static double[] price =new double[7];        //商品价格
    static int[] account =new int[6];                 //商品数量
    static double average=0;                            //5种商品平均单价
    public static void GoodsInformation(){      //商品信息
        Scanner scanner=new Scanner(System.in);
        for(int i=1;i<=5;i++){
            System.out.print("请输入第"+i+"种商品的名称:");
            name[i]=scanner.next();
            System.out.print("请输入第"+i+"种商品的价格:");
            price[i]=scanner.nextDouble();
            System.out.print("请输入第"+i+"种商品的数量:");
            account[i]=scanner.nextInt();
        }//for
    }//GoodsInformation  输入商品信息
    public static void TAHL(){ //总价格、平均价格、冒泡法
        double total1=0,total2=0;
        for(int i=1;i<=5;i++){
            total1+=price[i]*account[i];    //所有商品总价
            total2+=price[i];                      //5种商品单价和
        }
        average = total2 / 5;                   //5种商品平均单价
        for(int i=1;i<=5;i++){            //冒泡法降序排序   
            for(int j=1;j<=5;j++){
                if(price[j]<price[j+1]){
                    String na;
                    na=name[j+1];
                    name[j+1]=name[j];
                    name[j]=na;

                    double pr;
                    pr=price[j+1];
                    price[j+1]=price[j];
                    price[j]=pr;

                    int ac;
                    ac=account[j+1];
                    account[j+1]=account[j];
                    account[j]=ac;
                }//if
            }//内for
        }//外for
        System.out.println("这5种商品的总价格为:"+total1);
        System.out.println("这5种商品的平均价格为:"+ average);
        System.out.println("这5种商品的最高价为:"+price[1]);
        System.out.println("这5种商品的最低价为:"+price[5]);
    }//TAHL  输出总价、平均价格、冒泡法
    public static void Descending(){        //以价格降序输出商品
        System.out.println("\n"+"降序输出结果为:");
        System.out.println("价格顺序 高--------------------------->低");
        System.out.print("商品名称\t");
        for(int i=1;i<=5;i++){
            System.out.print(name[i]+"\t");
        }//for
        System.out.print("\n"+"商品价格\t");
        for (int i=1;i<=5;i++){
            System.out.print(price[i]+"\t");
        }//for
        System.out.print("\n"+"商品数量\t");
        for (int i=1;i<=5;i++){
            System.out.print(account[i]+"\t");
        }//for
    }//Descending  输出降价排序
    public static void Statistics(){   //统计高于平均值等等
        int a=0,b=0,c=0,eq=0,exceed=0,under=0;      //局部变量
        for(int i=1;i<=5;i++){
            if(price[i]>average) {
                a+=account[i];
                exceed++;
            }
        }//for
        for(int i=1;i<=5;i++){
            if(price[i]==average) {
                c+=account[i];
                eq++;
            }
        }//for
        for(int i=1;i<=5;i++){
            if(price[i]<average) {
                b+=account[i];
                under++;
            }
        }//for
        System.out.println("高于平均价格的商品有:"+exceed+"种");
        System.out.println("高于平均价格的商品的数量为:"+a);
        System.out.println("等于平均价格的商品有:"+eq+"种");
        System.out.println("等于平均价格的商品的数量为:"+c);
        System.out.println("低于平均价格的商品有:"+under+"种");
        System.out.println("低于平均价格的商品的数量为:"+b);

    }//Statistics统计  输出统计高于平均值等等
    public static void Search() {            //查找方法
        Scanner scanner=new Scanner(System.in);
        while(true){
            String nameSearch;                  //输入商品的名称
            System.out.print("请输入要查询的商品名称:");
            nameSearch=scanner.next();
            for(int i=1;i<=5;i++) {
                if(nameSearch.equals(name[i])) {
                    System.out.println("商品名称:"+name[i]+"\n"+"商品价格:"+price[i]+"\n"+"商品数量:"+account[i]+"\n");
                }//if
            }//for
            if(!nameSearch.equals(name[1]) && !nameSearch.equals(name[2]) && !nameSearch.equals(name[3])
                    && !nameSearch.equals(name[4])&& !nameSearch.equals(name[5])){
                System.out.println("\n超市目前无该商品,请重新输入或退出查询功能!"+"\n");
            }
            System.out.println("是否继续查询:"+"\n"+"若继续查询输入1,退出查询则输入0");
            int chose=scanner.nextInt();
            if(chose==0) {
                return;
            }//if
        }//while
    }//Search  输出查询信息
}//Goods

 public class ManagementSystem {
    public static void main(String[] args) {
        while(true){            //无初始化、 判断条件、执行语句
            System.out.println("\n"+"*************************************************");
            System.out.println("                   欢迎来到超市商品管理系统!                         ");
            System.out.println(" 系统功能如下:                                                                ");
            System.out.println("      1.输入5种商品的信息                                                   ");
            System.out.println("      2.统计商品的总价格及平均价格,最高价和最低价       ");
            System.out.println("      3.按价格降序排序                                                        ");
            System.out.println("      4.统计高于平均价格和低于平均价格的商品数量           ");
            System.out.println("      5.输入商品名称查询商品的价格和数量                         ");
            System.out.println("      0.退出系统                                                                   ");
            System.out.println("*************************************************");
            System.out.print(" 请输入你需要使用的功能的序号:");
            Scanner scanner=new Scanner(System.in);
            int x=scanner.nextInt();
            switch(x){
                case 0:
                    System.out.println("\n"+"已退出超市商品管理系统,欢迎下次使用!");
                    System.exit(0);
                case 1:
                    Goods.GoodsInformation();
                    break;
                case 2:
                    Goods.TAHL();
                    break;
                case 3:
                    Goods.Descending();
                    break;
                case 4:
                    Goods.Statistics();
                    break;
                case 5:
                    Goods.Search();
                    break;
            }//switch
        }//while
    }//psvm
 }//ManagementSystem

运行结果:




java 商品类目递归 使用java定义商品类_System


java 商品类目递归 使用java定义商品类_Powered by 金山文档_02


java 商品类目递归 使用java定义商品类_java 商品类目递归_03


java 商品类目递归 使用java定义商品类_java 商品类目递归_04


java 商品类目递归 使用java定义商品类_Powered by 金山文档_05


java 商品类目递归 使用java定义商品类_java_06


写在最后:

有问题欢迎私信博主~