本文实例为大家分享了java实现员工工资管理系统的具体代码,供大家参考,具体内容如下
一、题目要求
设计员工工资管理系统,实现以下功能:
(1)输入5名员工姓名、工号、月工资;
(2)统计每人的年收入及收入最高和最低的员工,计算他们的平均工资;
(3)按月工资高低降序排序;
(4)统计高于平均工资和低于平均工资的员工;
(5)输入工号名称查询员工的姓名和月工资。
二、源代码
import java.util.Scanner;
import java.io.BufferedReader;
public class MyStaff{
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));
}
first:{ //标号为一的代码块
System.out.println("欢迎使用员工工资管理系统!!!");
second:{ //标号为二的代码块
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)
{
sort(a); //调用sort方法
}
else if(input==2)
{
Statistics(a);
}
else if(input==3)
{
count(a);
}
else if(input==4)
{
tongji(Name,a);
}
else if(input==5)
{
chaxun(Name,Number,a);
}
else if(input>5) //如果输入的数大于5
{
break second; //退出二代码块
}
}
}
System.out.println("成功退出系统!!!");
}
}
//按月工资高低降序排序
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]+" ");}
}
//统计收入最高和最低的员工
public static void Statistics(int z[]){
int big=z[0]; //规定第一个人的工资最高
for(int i=1;i<5;i++){
if(z[i]>big) { //如果后面的人的工资高于第一个人
big=z[i]; } //则此人为工资最高的人
}
System.out.println("收入最高的员工为:"+x[i]+"\t他的工资为:"+big);
int small=z[0];
for(int i=1;i<5;i++){
if(z[i]<small){
small=z[i];}
}
System.out.println("收入最低的员工为:"+x[i]+"\t他的工资为:"+small);
}
//计算他们的平均工资
public static void count(int z[]){
int sum=0;
for(int i=0;i<5;i++){
sum+=z[i];
}
int average=(sum/5)*12;
System.out.println("他们的年平均工资为:"+average);
}
//统计高于平均工资和低于平均工资的员工
public static void tongji(String x[],int z[]){
int sum=0;
for(int i=0;i<5;i++){
sum+=z[i];
}
int average=sum/5; //计算平均工资
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 chaxun(String x[],int y[],int z[]){
System.out.print("请输入所查询的工号:");
Scanner s=new Scanner(System.in); //从键盘接收所要查询的工号
int xxxh=s.nextInt(); //存到xxxh中
for(int i=0;i<5;i++){
if(y[i]==xxxh) { //如果相等,输出信息
System.out.println("学号:"+y[i]+"\t姓名:"+x[i]+"\t工资:"+z[i]);
}
}
}
}
三、运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。