我求出來了3組解
創新互聯公司專業為企業提供蘇家屯網站建設、蘇家屯做網站、蘇家屯網站設計、蘇家屯網站制作等企業網站建設、網頁設計與制作、蘇家屯企業網站模板建站服務,十年蘇家屯做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
0010110011
0111010000
1011010000
沒驗證 ,你自己去驗證,呵呵
public class Main {
/**
* @param args
*/
private static int score = 10;
private static int[] test = new int[10];
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int a =0 ; a = 1; a++){
for(int b =0 ; b = 1; b++){
for(int c =0 ; c = 1; c++){
for(int d =0 ; d = 1; d++){
for(int e =0 ; e = 1; e++){
for(int f =0 ; f = 1; f++){
for(int g =0 ; g = 1; g++){
for(int h =0 ; h = 1; h++){
for(int i =0 ; i = 1; i++){
for(int j =0 ; j = 1; j++){
test[0] = a;
test[1] = b;
test[2] = c;
test[3] = d;
test[4] = e;
test[5] = f;
test[6] = g;
test[7] = h;
test[8] = i;
test[9] = j;
fun();
if(score == 100){
for(int k =0 ;k 10 ;k++)
System.out.print(test[k]);
System.out.print("\n");
}
score = 10;
}
}
}
}
}
}
}
}
}
}
}
private static void fun(){
for(int i=0 ;i 10 ;i++){
if(test[i] == 1){
score *= 2;
}else{
score -= (i+1);
}
}
}
}
public static void main(String[] args) {
double scores[] = new double[5];
double total = 0;
double avg = 0;
double max = 0;
double min = 0;
int count=0;
String inputStr=null;
System.out.println("請輸入5名學生的成績:");
Scanner input = new Scanner(System.in);
while(count5){
try{
if(count 5){
System.out.println("請輸入第"+(count+1)+"個分數:");
}
inputStr=input.nextLine();
scores[count++]=Double.valueOf(inputStr.trim());
}catch(Exception e){
if(inputStr!=null "exit".equals(inputStr.trim())){
System.out.println("您已成功結束程序");
System.exit(0);
}
System.out.println("若想結束請輸入:exit");
System.out.print("您輸入的分數不是數值類型,");
count--;
}
}
input.close();
Arrays.sort(scores);
min=scores[0];
max=scores[scores.length-1];
for(double score :scores){
total += score;
}
avg=total/scores.length;
System.out.println("總成績是" + total);
System.out.println("最高分是" + max);
System.out.println("最低分是" + min);
System.out.println("平均分是" + avg);
}
//-------------------------------------------------------------------------
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while(true){
Double[] scores = null;
double total = 0;
double avg = 0;
double max = 0;
double min = 0;
int count=1;
ListDouble inputScores=new ArrayListDouble();
String inputStr=null;
System.out.println("請輸入要統計學生的成績(理論上可以輸入無限個,前提是你有那么大的內存):");
while(true){
try{
System.out.println("請輸入第"+count+++"個分數,或輸入ok進行計算,離開請輸入exit");
inputStr=input.nextLine();
inputScores.add((double)Double.valueOf(inputStr.trim()));
}catch(Exception e){
if(inputStr!=null "exit".equals(inputStr.trim().toLowerCase())){
System.out.println("您已成功結束程序");
input.close();
System.exit(0);
}
if(inputStr!=null "ok".equals(inputStr.trim().toLowerCase())){
break;
}
System.out.println("您輸入的分數不是數值類型,");
System.out.println("若想結束請輸入exit ,若想計算結果請輸入ok");
count--;
}
}
if(inputScores.size()==0){
System.out.println("您沒有輸入學生成績,無數據可統計,程序結束。");
return ;
}
scores=inputScores.toArray(new Double[inputScores.size()]);
Arrays.sort(scores);
min=scores[0];
max=scores[scores.length-1];
for(double score :scores){
total += score;
}
avg=total/scores.length;
System.out.println("總成績是" + total);
System.out.println("最高分是" + max);
System.out.println("最低分是" + min);
System.out.println("平均分是" + avg);
}
}
按照題目要求編寫的用javaBean規范設計的學生類Student的Java程序如下
需要創建user.java.test包,把Student.java文件和Test.java文件放入包中,編譯Student.java文件并且編譯運行Test.java文件得到運行結果
Student.java文件代碼如下
package user.java.test;
import java.io.Serializable;
public class Student implements Serializable{
private static final long serialVersionUID = 1L;
private String no;
private String name;
private double score;
public Student(){}
public Student(String no,String name,double score){
this.no=no;
this.name=name;
this.score=score;
}
public String getNo(){ return no;}
public void setNo(String no){ this.no=no;}
public String getName(){ return name;}
public void setName(String name){ this.name=name;}
public double getScore(){ return score;}
public void setScore(double score){ this.score=score;}
public String toString(){
return "學號:"+no+",姓名:"+name+",成績:"+score;
}
public static double getAvg(Student[] sArray){
double sum=0,avg;
for(int i=0;isArray.length;i++){
sum=sum+sArray[i].getScore();
}
avg=sum/sArray.length;
return avg;
}
}
Test.java文件代碼如下
package user.java.test;
public class Test{
public static void main(String[] args){
Student[] sArray=new Student[5];
sArray[0]=new Student("001","張三",89.5);
sArray[1]=new Student("002","李四",82.5);
sArray[2]=new Student("003","王五",93);
sArray[3]=new Student("004","趙六",73.5);
sArray[4]=new Student("005","孫七",66);
System.out.println("這些學生的平均分:"+Student.getAvg(sArray));
for(int i=0;isArray.length;i++){
System.out.println(sArray[i].toString());
}
}
}
正好我閑著,給你寫一個吧。
我寫的這個評委分數是在代碼里固定到數組里了,如果你需要運行時手動輸入評分,可以將oldScores里的數據改成手動輸入就行了(這個不用我再寫了吧,如果不會再追問,再告訴你)。
你先新建一個類,將下面的main方法全部復制進去就能運行了,自己看一下吧。
/**?主方法?*/
public?static?void?main(String[]?args)
{
/**?保存原始評分的數組(如果你需要運行時手動輸入分數,將?oldScores中的數據改成手動輸入就行了?*/
double[]?oldScores?=?{15,?77,?55,?88,?79,?98,?67,?89,?68,?88};
/**?最終將用來保存排序后的數組?*/
double[]?scores?=?new?double[oldScores.length];
double?temp;
/**?平均分?*/
double?avg?=?0;
int?k;
/**?將原始評分放入最終排序數組?*/
for?(int?i?=?0;?i??oldScores.length;?i++)
{
scores[i]?=?oldScores[i];
}
/**?開始排序?*/
for?(int?i?=?0;?i??scores.length?-?1;?i++)
{
k?=?i;
for?(int?j?=?i?+?1;?j??scores.length;?j++)
{
if?(scores[k]??scores[j])
{
k?=?j;
}
}
if?(i?!=?k)
{
temp?=?scores[k];
scores[k]?=?scores[i];
scores[i]?=?temp;
}
}
/**?計算去掉最高分和最低分之后的和?*/
double?sum?=?0;
/**?記錄計算平均分的分數個數?*/
double?num?=?0;
for?(int?i?=?1;?i??scores.length?-?1;?i++)
{
num++;
sum?+=?scores[i];
}
/**?計算平均分?*/
avg?=?sum?/?num;
/**?最公平的肯定不是在scores數組兩端?*/
double?zgp?=?0;
double?cha?=?0;
/**?標記與平均值差值最小的分數位置?*/
int?flag?=?0;
/**?開始尋找最公平評分?*/
for?(int?i?=?1;?i??scores.length?-?1;?i++)
{
/**?為cha賦初始值,注意比較差值要使用絕對值比較?*/
if?(i?==?1)
{
cha?=?Math.abs(scores[i]?-?avg);
}
double?cha1?=?Math.abs(scores[i]?-?avg);
if?(cha1??cha)
{
cha?=?cha1;
flag?=?i;
}
}
zgp?=?scores[flag];
/**?由于最不公平的分數肯定在scores數組的第一個或者是最后一個?*/
double?bgp?=?0;
if?(Math.abs(scores[0]?-?avg)??Math.abs(scores[scores.length?-?1]?-?avg))
{
bgp?=?scores[0];
}
else
{
bgp?=?scores[scores.length?-?1];
}
/**?全部計算完成,下面開始輸出結果?*/
System.out.println("原始評委分數如下:");
for?(int?i?=?0;?i??oldScores.length;?i++)
{
System.out.print(oldScores[i]?+?",?");
}
System.out.println();
System.out.println("排序后分數如下:");
for?(int?i?=?0;?i??scores.length;?i++)
{
System.out.print(scores[i]?+?",?");
}
System.out.println();
System.out.println("去掉最高分和最低分后平均分:"?+?avg);
System.out.println("最公平分數:"?+?zgp);
System.out.println("最不公平分數:"?+?bgp);
}
本文名稱:java答題計分代碼 java答題系統
URL地址:http://vcdvsql.cn/article34/ddcsjpe.html
成都網站建設公司_創新互聯,為您提供移動網站建設、品牌網站設計、軟件開發、外貿網站建設、營銷型網站建設、網站設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯