员工工资管理系统

  • 设计要求
  • 实现代码
  • 运行结果


设计要求

设计员工工资管理系统,实现以下功能:

(1)输入5名员工姓名、工号、月工资;
(2)统计每人的年收入及收入最高和最低的员工,计算他们的平均工资;
(3)按月工资高低降序排序;
(4)统计高于平均工资和低于平均工资的员工;
(5)输入工号名称查询员工的姓名和月工资。

实现代码

package work.chengxu;
import java.util.Scanner;
public class salary{
    public static void main(String []args){
        String Name[]=new String[5];             //姓名
        int Number[]=new int[5];                 //工号
        int a[]=new int[5];                      //工资
        for( int i=0;i<5;i++){
            Scanner sc=new Scanner(System.in);      //接收键盘输入的员工信息
            System.out.println("请输入员工"+(i+1)+"的姓名");
            Name[i]=sc.next();
            System.out.println("请输入员工"+(i+1)+"的工号");
            Number[i]=sc.nextInt();
            System.out.println("请输入员工"+(i+1)+"的工资");
            a[i]=sc.nextInt();
        }
        for( int i=0;i<5;i++){                     //循环输出五个人的信息
            System.out.println("员工的信息:姓名:"+Name[i]+"\t工号:"+Number[i]+"\t月工资:"+a[i]+"\t年工资:"+(a[i]*12));
        }
        System.out.println("欢迎使用员工工资管理系统!!!");
        while(true){
            System.out.println("[1]统计收入最高和最低的员工");
            System.out.println("[2]计算他们的平均工资");
            System.out.println("[3]统计高于平均工资和低于平均工资的员工");
            System.out.println("[4]输入工号查询员工的姓名和月工资");
            System.out.println("[5]按月工资高低降序排序");
            Scanner t=new Scanner(System.in);
            int input=t.nextInt();
            if(input==1)
            {
                Statistics(Name,a);     //统计收入最高和最低
            }
            else if(input==2)
            {
                count(a);               //计算平均工资
            }
            else if(input==3)
            {
                total(Name,a);          //统计高于平均
            }
            else if(input==4)
            {
                query(Name,Number,a);    //查询姓名和工资
            }
            else if(input==5)
            {
                sort(a);                 //工资由高到低降序排序
            }
            else if(input>5||input<1)
            {
                break ;
            }
        }
        System.out.println("成功退出系统!!!");

    }
    //统计收入最高和最低的员工
    public static  void Statistics(String x[],int z[]){
        int big=z[0],b=0;          //规定第一个人的工资最高
        for(int i=1;i<5;i++){
            if(z[i]>big)
            {                //如果后面的人的工资高于第一个人
                big=z[i];
                b=i;
            }//则此人为工资最高的人
        }
        System.out.println("收入最高的员工为:"+x[b]+"收入最高工资为:"+big);
        int small=z[0],c=0;
        for( int i=1;i<5;i++){
            if(z[i]<small){
                small=z[i];
                c=i;
            }
        }
        System.out.println("收入最低的员工为:"+x[c]+"收入最低工资为:"+small);
    }

    //计算他们的平均工资
    public static void count(int z[]){
        int sum=0;
        for(int i=0;i<5;i++){
            sum+=z[i];
        }
        int average=sum/5;
        System.out.println("他们的平均工资为:"+average);
    }
    //统计高于平均工资和低于平均工资的员工
    public static void total(String x[],int z[]){
        int sum=0;
        for(int i=0;i<5;i++){
            sum+=z[i];
        }
        int average=sum/5;   //计算平均工资
        System.out.println("平均工资为:"+average);
        for(int i=0;i<5;i++){
            if(z[i]>average)
                System.out.println("高于平均工资的员工为:"+x[i]+"\t他的工资为:"+z[i]);
            if(z[i]<average)
                System.out.println("低于平均工资的员工为:"+x[i]+"\t他的工资为:"+z[i]);
        }
    }
    //输入工号查询员工的姓名和月工资
    public static void query(String x[],int y[],int z[]){
        System.out.print("请输入所查询的工号:");
        Scanner s=new Scanner(System.in);      //从键盘接收所要查询的工号
        int xx=s.nextInt();                  //存到xx中
        for(int i=0;i<5;i++){
            if(y[i]==xx) {//如果相等,输出信息
                System.out.println("工号:"+y[i]+"\t姓名:"+x[i]+"\t工资:"+z[i]);
            }
        }
    }
    //按月工资高低降序排序
    public static void sort(int z[]){
        for(int i=0;i<5-1;i++)              //控制比较几次
            for(int j=0;j<5-1-i;j++)        //控制逐一比较
                if(z[j]<z[j+1]){              // 如果前面的小于后面的互换位置
                    int p;
                    p=z[j];
                    z[j]=z[j+1];
                    z[j+1]=p;
                }
        System.out.println("按月工资高低降序排序为:");
        for(int i=0;i<5;i++){
            System.out.println(z[i]+" ");}
    }
}

运行结果

javaee工资管理系统 java员工工资管理系统_开发语言


javaee工资管理系统 java员工工资管理系统_java_02

后面大家就可以自行输入对应功能前的序号,实现此系统的功能