0
所以我需要爲我的程序使用矢量類。用戶定義了它的大小,基本上這意味着'學生的數量'被處理,因爲我必須在測試中收到姓名,身份證號碼和他們的答案。然後,我必須將所述答案與正確答案進行比較,確定他的成績(如果超過70%,他/她通過)。我對構造函數感到困惑,因爲我似乎無法將值(答案)發送給我的班級,並進行比較,因此學生總是失敗並獲得「0」。這是我得到了什麼(我是一個小白:C):在矢量類(Java)中加載矢量
import java.io.*;
class vector
{
private String nom, ced;//name and id
private String[] res = new String [12];//answers
vector (String n, String c)
{
nom = n;
ced = c;
}
vector (String tab[])
{
res = tab;
}
public String nombre()//name
{
return nom;
}
public String cedula()//id
{
return ced;
}
public int puntaje()//score
{
String[] clv= {"b","c","a","b","d","a","c","d","a","b","c","d"};//right answers
int x,acum=0;
for(x=0;x<12;x++)
{
if(res[x]==clv[x])
acum=acum+1;
}
return acum;
}
public String resultado()//result
{
double nota;
String msg;
nota = puntaje()*100/12;
if(nota>=70)
msg = ("APROBÓ!" + nota);//pass
else
msg = ("FRACASÓ!" + nota);//fail
return msg;
}
}
public class pizza //sorry
{
public static void main(String[] args)throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader (System.in));
int size;
System.out.println("Numero de estudiantes que tomaron la prueba ---> ");//# of students
size = Integer.parseInt(br.readLine());
vector [] objnc = new vector[size];
int i, j;
String nom, ced, r;
String [] resp = new String [12];
try
{
for(i=0;i<size;i++)
{
System.out.println("Ingrese el nombre ---> ");//name
nom = br.readLine();
System.out.println("Ingrese la cédula ---> ");//id
ced = br.readLine();
System.out.println("Ingrese las respuestas: ---> ");//answers
for(j=0;j<12;j++)
{
r = br.readLine();
br.skip(1);
resp[j] = r;
vector objc = new vector(resp);
}
objnc[i] = new vector(nom,ced);
}
}
catch(NumberFormatException z)
{ System.out.println("Error de conversion... "+z);
}
catch(IOException z)
{ System.out.println("Error de entrada/salida... "+z);
}
catch(NullPointerException z)
{ System.out.println("Error de lectura... "+z);
}
catch(Exception z)
{ System.out.println("Error... "+z);
}
for(i=0;i<size;i++)
System.out.println(objnc[i].nombre()+" "+objnc[i].cedula()+" "+objnc[i].resultado());
}
}