📄 pingfen.java
字号:
/*
* Created on 2006-7-2
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
/**
* @author webb
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
import java.io.*;
public class pingfen {
int bhao[]=new int[300];
String xming[]=new String[300];
double cji[]=new double[300];
double temp[]=new double[10];
BufferedReader br = null;
BufferedWriter bw=null;
FileReader fr=null;
int rshu,qq;
double pp;
public void init()
{
int x=0;
int in;
System.out.print("请选择操作:");
x=rcuoint(2);
switch(x)
{
case 1:luru();break;
case 2:baocun();break;
case 3:duqu();break;
case 4:exitc();break;
default : exitc();break;
}
}
public double rcuocji(int i)
{
double j;
double pd=0;
//double pp;
try
{
br = new BufferedReader(new InputStreamReader(System.in));
//String line = br.readLine();
try
{
String line = br.readLine();
pd=Double.parseDouble(line); pp=pd;
}
catch (java.lang.NumberFormatException ivjExc)
{
System.out.println("数据类型错误,请重新输入!");
System.out.print("请输入"+(i+1)+"号评委给的成绩:");
rcuocji(i);
}
}
catch(IOException e){}
return pp;
}
public int rcuoint(int i)
{
int pd=i;
try
{
br = new BufferedReader(new InputStreamReader(System.in));
String line = br.readLine();
try
{
pd=Integer.parseInt(line);qq=pd;
}
catch (java.lang.NumberFormatException ivjExc)
{
System.out.println("数据类型错误,请重新输入!");
if(i==1)System.out.print("请输入参赛人数:");
if(i==2)System.out.print("请选择操作:");
rcuoint(i);
}
}
catch(IOException e){}
return qq;
}
public void luru()
{
System.out.print("请输入参赛人数:");
rshu=rcuoint(1);
int j=0;
for(int i=0;i<rshu;i++)
{
bhao[i]=i+1;
System.out.print("请输入"+bhao[i]+"号选手的姓名:");
try
{
br = new BufferedReader(new InputStreamReader(System.in));
String line = br.readLine();
xming[i]=line;
}
catch(IOException e){}
for(j=0;j<10;j++)
{
System.out.print("请输入"+(j+1)+"号评委给的成绩:");
temp[j]=rcuocji(j);//容错处理
}
cji[i]=jisuan();
}
xianshi();
}
public double jisuan()
{
//////////pai xu
int i,j,k;
double t;
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(temp[i]>temp[i+1])
{
t=temp[i];
temp[i]=temp[i+1];
temp[i+1]=t;
}
/////////ji suan
double av,sum;
sum=0;
for(int q=1;q<9;q++)
sum+=temp[q];
av=sum/10;
return av;
}
public void bianhao()
{
char ch='a';
int i,j,k,tb,fshi;
double tc;
String tx;
for(j=0;j<rshu-1;j++)
for(i=0;i<rshu-1-j;i++)
if(bhao[i]>bhao[i+1])
{
tb=bhao[i];
bhao[i]=bhao[i+1];
bhao[i+1]=tb;
tx=xming[i];
xming[i]=xming[i+1];
xming[i+1]=tx;
tc=cji[i];
cji[i]=cji[i+1];
cji[i+1]=tc;
}
for(int p=0;p<rshu;p++)
{
System.out.println("选手编号:"+bhao[p]+" 姓名:"+xming[p]+" 成绩:"+cji[p]);
}
System.out.print("是否要以其他方式查看成绩?Y/N");
try
{
br = new BufferedReader(new InputStreamReader(System.in));
ch=(char)br.read();
}
catch(IOException e){}
if(ch=='Y'||ch=='y')
{
xsmenu();
int f;
f=rcuoint(2);
switch(f)
{
case 1:bianhao();break;
case 2:gaodi();break;
default:menu();break;
}
}
else
{
System.out.print("是否保存参赛选手成绩资料?Y/N");
char bcun='a';
try{
br = new BufferedReader(new InputStreamReader(System.in));
bcun=(char)br.read();
}catch(IOException e){}
if(bcun=='Y'||bcun=='y')baocun();
else menu();
}
}
public void gaodi()
{
int i,j,k,tb,fshi;
double tc;
String tx;
char ch='a';
for(j=0;j<rshu-1;j++)
for(i=0;i<rshu-1-j;i++)
if(cji[i]<cji[i+1])
{
tc=cji[i];
cji[i]=cji[i+1];
cji[i+1]=tc;
tb=bhao[i];
bhao[i]=bhao[i+1];
bhao[i+1]=tb;
tx=xming[i];
xming[i]=xming[i+1];
xming[i+1]=tx;
}
for(int p=0;p<rshu;p++)
{
System.out.println("选手编号:"+bhao[p]+" 姓名:"+xming[p]+" 成绩:"+cji[p]);
}
System.out.print("是否要以其他方式查看成绩?Y/N");
try
{
br = new BufferedReader(new InputStreamReader(System.in));
ch=(char)br.read();
}
catch(IOException e){}
if(ch=='Y'||ch=='y')
{
xsmenu();
int f;
f=rcuoint(2);
switch(f)
{
case 1:bianhao();break;
case 2:gaodi();break;
default:menu();break;
}
}
else
{
System.out.print("是否保存参赛选手成绩资料?Y/N");
char bcun='a';
try{
br = new BufferedReader(new InputStreamReader(System.in));
bcun=(char)br.read();
}catch(IOException e){}
if(bcun=='Y'||bcun=='y')baocun();
else menu();
}
}
public void xianshi()
{
System.out.print("成绩已录入,需要查看吗?Y/N");
char ckan='a';
int fshi=0;
try
{
br = new BufferedReader(new InputStreamReader(System.in));
ckan=(char)br.read();
if(ckan=='Y'||ckan=='y')
{
xsmenu();
fshi=rcuoint(2);
switch(fshi)
{
case 1:bianhao();break;
case 2:gaodi();break;
default:menu();break;
}
}
else
{
System.out.print("是否保存参赛选手成绩资料?Y/N");
char bcun='a';
br = new BufferedReader(new InputStreamReader(System.in));
bcun=(char)br.read();
if(bcun=='Y'||bcun=='y')baocun();
else menu();
}
}
catch(IOException e){}
}
public void baocun()
{
String s;
if(bhao[0]==0)
{
System.out.println("你还没有输入数据,请返回操作!");
menu();
}
else
{
System.out.print("请输入保存文件名:");
try
{
BufferedReader wj=new BufferedReader(new InputStreamReader(System.in));
String ss=wj.readLine();
bw= new BufferedWriter(new FileWriter(ss));
for(int i=0;i<rshu;i++)
{
s="编号:"+bhao[i]+" 姓名:"+xming[i]+" 成绩:"+cji[i];
bw.write(s);
bw.newLine();
}
bw.close();
System.out.println("文件保存成功!");
menu();
}
catch(IOException e){}
}
}
public void duqu()
{
String s,fname;
String file="";
String line;
char ch='a';
System.out.print("请输入要读取的文件名:");
try
{
br = new BufferedReader(new InputStreamReader(System.in));
file = br.readLine();
}
catch(IOException e){}
try
{
fr=new FileReader(file);
br=new BufferedReader(fr);
while((line=br.readLine())!=null)
System.out.println(line);
fr.close();
br.close();
}
catch(IOException e){}
System.out.print("是否需要其它操作?Y/N");
try
{
br = new BufferedReader(new InputStreamReader(System.in));
ch=(char)br.read();
}
catch(IOException e){}
if(ch=='Y'||ch=='y')
{
menu();
}
else
{
exitc();
}
}
public void exitc()
{
System.out.println("你已退出系统,谢谢使用!");
System.exit(1);
}
public void xsmenu()
{
System.out.print("请选择查看方式:\n"
+"1.按参赛选手的编号顺序查看\n"
+"2.按成绩的从高到低顺序查看\n");
System.out.print("请选择操作:");
}
public void menu()
{
System.out.println("主菜单:\n"
+"1.成绩录入 2.成绩保存 3.成绩读取 4.退出\n");
init();
}
public pingfen()
{
System.out.println("================大赛评分程序================\n"
+" 计算机学院 2003级软件(2)班 陈伟 3103003333\n");
menu();
}
public static void main(String[] args) {
pingfen pfen=new pingfen();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -