当前位置:文档之家› 武科大_java实验答案_全

武科大_java实验答案_全

补充第一节的容public class MyJavaClass{ int a;myjavaclass(int a){this.a=a;}public void main(){ myjavaclass c1=new MyJavaClass();System.out.printIn(c1.a);}System.out.printIn("程序结束。

");}1.上面的程序有几处错误?请依次改正。

2.这个程序的源代码应该保存为什么名字的文件?3.请写出编译和运行这个文件的完整命令,注意给出环境变量的设置(假设源文件保存在d:\java目录)4.如果在程序最前面加入下面语句:package Pkg;该程序又该如何编译和运行?答案:答案(1):修改以后的程序为(粗体为修改过的地方)public class MyJavaClass{ int a;MyJavaClass(int a){this.a=a;}public Static void main(String args[]){ MyJavaClass c1=new MyJavaClass(2) //此处的实际参数可为任意整数;System.out.println(c1.a);System.out.println("程序结束。

");}}答案(2)public class MyJavaClass{ int a;int myjavaClass(int a){this.a=a;return a;}//注此处函数返回值可为任意类型public static void main(String args[]){ MyJavaClass c1=new MyJavaClass();System.out.println(c1.a);System.out.println("程序结束。

");}}2、答案:这个程序的源代码应该保存为MyJavaClass.java。

3、答案(1)set class=c:\j2sdk\binset classpath=d:\java编译:javac d:\java\MyJavaClass.java运行:java MyJavaClass答案(2)编译:c:\j2sdk\bin\javac d:\java\MyJavaClass.javaset classpath=d:\java运行:java MyJavaClass4、答案:如果在程序最前面加入语句:package pkg;环境变量同3、设置编译:javac -d . d:\java\MyJavaClass.java运行:java pkg.MyJavaClassI 实验1答案1-(1-1):import java.io.*;class RandomMonth{public static void main(String args[]){ String months[]={"January","February","March","April","May","June","July", "Aguest","September","October", "November","December"};int i;i = (int)(Math.random() * 12);System.out.println(months[i]);}}1-(1-2):import java.io.*;import java.util.*;class RandomMonth2{ public static void main(String args[]){ String months[]={"January","February","March","April","May","June","July", "Aguest","September","October", "November","December"};Random r=new Random();int i;i = Math.abs(r.nextInt())%12;System.out.println(months[i]);}}1-(2)import java.util.*;class RandomPx{ public static void main(String args[]){ int num[]=new int[20];int i,j,temp;Random r=new Random();for(i=0;i<20;i++)num[i]=r.nextInt();for(i=0;i<19;i++)for(j=0;j<19-i;j++){ if (num[j]>num[j+1]){temp=num[j];num[j]=num[j+1];num[j+1]=temp;}}for(i=0;i<20;i++){if (i%5==0) System.out.print("\n\r");System.out.print(num[i]+" " );}}}II实验2 答案2-(1)public class studentx{private String no;private String classno private String name;private String sex;private int age;studentx(){ no="1";classno="1";name="lucy";sex="male";age=0;}String getno(){return no;}String getclassno(){return classno;}String getname(){return name;}int getage(){return age;}void updateage(int newage){this.age=newage;}public String toString(){ return(name+"学生:"+"性别"+sex+",年龄"+age+",学号为"+no+",班级为"+classno);}public static void main(String[] args){ studentx p=new studentx();p.updateage(25);System.out.println(p.getage());System.out.println(p);}};2-(2)import java.io.*;import java.util.*;class School{ static float scoreLine;static void setscoreLine(float score){scoreLine=score;}static float getscoreLine(){return scoreLine;}}class Student{String name,id;float comScore,score;float getcomScore(){return comScore;}float getscore(){return score; }Student(String name,String id,float comScore,float score){=name;this.id=id;Score=comScore;this.score=score;}}class Enroll{ static boolean isEnroll(Student s){ if(s.getcomScore()>=School.getscoreLine()||(s.getscore()>96 && s.getcomScore()>=300) )return true;else return false;}public static void main(String args[]){ Student s[]=new Student[3];String info[]=new String[4];int i,j;String messInfo;BufferedReader in=new BufferedReader(new InputStreamReader(System.in));StringTokenizer st;School.setscoreLine(550);for( i=0;i<s.length;i++ ){try{ messInfo=in.readLine();st=new StringTokenizer(messInfo);for(j=0;j<info.length;j++){info[j]=st.nextToken();}} catch(IOException ex){}s[i]=newStudent(info[0],info[1],Float.parseFloat(info[2]),Float.parseFloat(i nfo[3]));}for(i=0;i<s.length;i++)if(isEnroll(s[i]))System.out.println(s[i].name+" "+s[i].id +" "+ " 被录取!"); elseSystem.out.println(s[i].name+" "+s[i].id +" "+ " 没有录取!");}}2-(3)思考题:import java.io.*;class Complex{ double RealPart;double ImageinPart;Complex(double rp,double ip){ RealPart=rp; ImageinPart=ip;}Complex complexAdd(Complex a){ Complex temp;temp=new Complex(RealPart+a.RealPart,ImageinPart+a.ImageinPart);return temp;}Complex complexMinus(Complex a){ Complex temp;temp=new Complex(RealPart-a.RealPart,ImageinPart-a.ImageinPart);return temp;}public String toString(){ if (ImageinPart<0)return (RealPart+"-"+Math.abs(ImageinPart)+"i");elsereturn (RealPart+"+"+ImageinPart*+"i");}}class ComplexApp{ public static void main(String args[]){char operator;try{Complex c1=new Complex(1,2);Complex c2=new Complex(3,4);Complex complexResult;operator=(char)System.in.read();switch(operator){ case '+':complexResult=plexAdd(c2);break;case '-':complexResult=plexMinus(c2);break;}System.out.println(complexResult);}catch(IOException e){System.out.println(e);}}}III实验3 答案3-(1)1、class Person{public String name;public String sex;int age;Person(String name,String sex,int age){=name;this.sex=sex;this.age=age;}}class Student extends Person{public String sno;public int classno;public void updateAge(int age){this.age=age;}Student(String name,String sex,int age,String sno,int classno) {super(name,sex,age);this.sno=sno;this.classno=classno;}public String toString(){ System.out.println("name="+name+" sex="+sex +" age="+age+ "sno="+sno+" classno"+classno+" ");return "name="+name+" sex="+sex +" age="+age+ " sno="+sno+"classno"+classno+" ";}};public class TestStudent{public static void main(String[] args){Student s1=new Student("susan","女",20,"",2);s1.updateAge(21);s1.toString();}}3-(3)import java.util.*;abstract class Employee{ String name;long no;static long id=1000;abstract double getPay();Employee(String name){ =name;id=id+1;}};class Manager extends Employee{double pay=8000;double getPay(){return 8000;}Manager(String name){super(name);no=id;}public String toString(){return "name:"+name+" no:"+no+" pay:8000";} };class Sale extends Employee{ long saleNum;double getPay(){return saleNum*0.4;}Sale(String name,long saleNum){super(name);no=id;this.saleNum=saleNum;}public String toString(){return "name:"+name+" no:"+no+" pay:"+getPay();}}class Tech extends Employee{ long salaryHours;double getPay(){return salaryHours*100; }Tech(String name,long salaryHours){super(name);no=id;this.salaryHours=salaryHours;}public String toString(){return "name:"+name+" no:"+no+" pay:"+getPay();}};class EmployApp{public static void main(String args[]){Vector v=new Vector();Employee em;double numPay=0;v.addElement(new Sale("liping",10000));v.addElement(new Sale("susan",12000));v.addElement(new Tech("linda",40));v.addElement(new Tech("write",20));v.addElement(new Manager("gucci"));v.addElement(new Manager("jessica"));Enumeration e=v.elements();while(e.hasMoreElements()){em=(Employee)e.nextElement();numPay=numPay+em.getPay();System.out.println(em);}System.out.println("总工资:"+numPay);}};IV 实验4 答案4-(1)import ng.*;import java.io.*;class TestException{public static void main(String[] args) {try{outofBound();arraySize();nullPointer();}catch(NegativeArraySizeException e){System.out.println(e.toString());} }static void outofBound(){try{int i;int a[];a=new int[10];for(i=0;i<11;i++){ a[i]=i;System.out.println("a["+i+"]="+ a[i]);}}catch(IndexOutOfBoundsException e){System.out.println(e.toString());}}static void nullPointer(){try{String s=null;System.out.println(s.length());}catch(NullPointerException e){System.out.println(e.toString());}}static void arraySize() throws NegativeArraySizeException {try{int a[];a=new int[-3];}catch(NegativeArraySizeException e){throw e;}}}4-(2)class MyException extends Exception{private String Msg;public MyException(String message){super(message);Msg=message;}public void printMsg(){System.out.println(Msg);}}public class EX6_3{void GenerateMyException() throws MyException{ throw new MyException("此处发生异常信息");}public static void main(String args[]){EX6_3 obj=new EX6_3();try{obj.GenerateMyException();}catch (MyException e){e.printMsg();}}}4-(3)思考题class NullParameterException extends Exception {NullParameterException(String Message){super(Message);}};class TestArea{public static void main(String[] args){shape sh=null;int num;num=args.length;try{switch(num){case 1:sh=new Zangle(Double.parseDouble(args[0])); break;Case 2:sh=new Longangle(Double.parseDouble(args[0]),Double.parseDouble(args[1]));b reak;case 3:sh=new Triangle(Double.parseDouble(args[0]),Double.parseDouble(args[1]),Dou ble.parseDouble(args[2]));break;case 0:throw new NullParameterException("参数个数为零!");}System.out.println(sh.area());}catch(Exception e){System.out.println(e.toString());}}};abstract class shape{abstract double area();};class Triangle extends shape{double a,b,c;Triangle(double a,double b,double c){this.a=a;this.b=b;this.c=c;}double area(){double s;s=(a+b+c)/2;return(Math.sqrt(s*(s-a)*(s-b)*(s-c)));}};class Longangle extends shape{double l,w;Longangle(double l,double w){this.l=l;this.w=w;}double area(){return (l*w);}};class Zangle extends shape{double l;Zangle(double l){this.l=l;}double area(){return l*l;}};V 实验5 答案5-(1)import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.io.ObjectOutputStream;import java.io.PrintWriter;import java.io.Serializable;import java.util.*;class Student implements Serializable {String name;String sno;int age;Student(String name,String sno,int age) {=name;this.sno=sno;this.age=age;}void displayInfo(){System.out.println("name="+name+"sno="+sno+"age="+age);;}String getSno(){return sno;}int getAge(){return age;}String getName(){return name;}}class StudentAll{ Vector<Student> studentSet;StudentAll(){ studentSet=new Vector<Student>();}boolean addStudent(Student s){boolean flag=true;for(Student se:studentSet)if(se.getSno().equals(s.getSno())){flag=false;break;}if(flag) studentSet.addElement(s);return flag;}boolean removeStudent(String sno){ boolean flag=false;for(Student se:studentSet)if(se.getSno().equals(sno)){ studentSet.remove(se); flag=true;break;}return flag;}int getStudentNum(){ return studentSet.size();}void saveStudent(){try{PrintWriter ps=new PrintWriter(new FileWriter("sp3.txt"));for (Student se:studentSet){ps.print(se.getName());ps.print(" ");ps.print(se.getSno());ps.print(" ");ps.println(se.getAge());}ps.close();}catch(IOException e){}}void displayAllStudent(int displaySource){String name,sno;int age;if(displaySource==1){ studentSet.removeAllElements();try{Scanner ps=new Scanner(new FileInputStream("sp3.txt"));while(ps.hasNext()){name=ps.next();sno=ps.next();age=ps.nextInt();studentSet.addElement(new Student(name,sno,age));}ps.close();}catch(IOException e){}}for(Student se:studentSet){se.displayInfo();}}public class TestStudentAll{public static void main(String args[]){int i;StudentAll stSet=new StudentAll();/* stSet.addStudent(new Student("aaa","001",25));stSet.addStudent(new Student("bbb","002",21));if(! stSet.addStudent(new Student("ccc","002",21))) System.out.println("学号雷同");stSet.addStudent(new Student("ccc","003",21));stSet.displayAllStudent(0);stSet.saveStudent();*/stSet.displayAllStudent(1);stSet.removeStudent("002");System.out.println("\n删除后信息");stSet.displayAllStudent(0);}}import java.io.*;import java.util.*;class Student implements Serializable{String name;String sno;int age;Student(String name,String sno,int age){=name;this.sno=sno;this.age=age;}void displayInfo(){System.out.println("name="+name+"sno="+sno+"age="+age);;}String getSno(){return sno;}int getAge(){return age;}String getName(){return name;}}class StudentAll{ Vector<Student> studentSet;StudentAll(){ studentSet=new Vector<Student>();}boolean addStudent(Student s){boolean flag=true;for(Student se:studentSet)if(se.getSno().equals(s.getSno())){flag=false;break;}if(flag) studentSet.addElement(s);return flag;}boolean removeStudent(String sno){ boolean flag=false;for(Student se:studentSet)if(se.getSno().equals(sno)){ studentSet.remove(se); flag=true;break;}return flag;}int getStudentNum(){ return studentSet.size();}void saveStudent(){try{PrintWriter ps=new PrintWriter(new FileWriter("sp3.txt"));for (Student se:studentSet){ps.print(se.getName());ps.print(" ");ps.print(se.getSno());ps.print(" ");ps.println(se.getAge());}ps.close();}catch(IOException e){}}void displayAllStudent(int displaySource){String name,sno;int age;if(displaySource==1){ studentSet.removeAllElements();try{Scanner ps=new Scanner(new FileInputStream("sp3.txt"));while(ps.hasNext()){name=ps.next();sno=ps.next();age=ps.nextInt();studentSet.addElement(new Student(name,sno,age));}ps.close();}catch(IOException e){}}for(Student se:studentSet){se.displayInfo();}}}public class TestStudentAll{public static void main(String args[]){int i;StudentAll stSet=new StudentAll();/* stSet.addStudent(new Student("aaa","001",25));stSet.addStudent(new Student("bbb","002",21));if(! stSet.addStudent(new Student("ccc","002",21))) System.out.println("学号雷同");stSet.addStudent(new Student("ccc","003",21));stSet.displayAllStudent(0);stSet.saveStudent();*/stSet.displayAllStudent(1);stSet.removeStudent("002");System.out.println("\n删除后信息");Collections.sort(stSet.studentSet,new NameComparator());stSet.displayAllStudent(0);}}class NameComparator implements Comparator{public int compare(Object obj1,Object obj2){Student e1=(Student)obj1;Student e2=(Student)obj2;if(pareTo()==0) return 0;else if(pareTo()>0) return 1;else return -1;}}import java.io.*;import java.util.*;class Student implements Serializable,Comparable{String name;String sno;int age;Student(String name,String sno,int age){=name;this.sno=sno;this.age=age;}void displayInfo(){System.out.println("name="+name+"sno="+sno+"age="+age);;}String getSno(){return sno;}int getAge(){return age;}String getName(){return name;}public int compareTo(Object obj){Student p1;p1=(Student)obj;if (p1.age<age)return -1;else if(p1.age>age)return 1;return 0;}}class StudentAll{ Vector<Student> studentSet;StudentAll(){ studentSet=new Vector<Student>();}boolean addStudent(Student s){boolean flag=true;for(Student se:studentSet)if(se.getSno().equals(s.getSno())){flag=false;break;}if(flag) studentSet.addElement(s);return flag;}boolean removeStudent(String sno){ boolean flag=false;for(Student se:studentSet)if(se.getSno().equals(sno)){ studentSet.remove(se); flag=true;break;}return flag;}int getStudentNum(){ return studentSet.size();}void saveStudent(){try{PrintWriter ps=new PrintWriter(new FileWriter("sp3.txt"));for (Student se:studentSet){ps.print(se.getName());ps.print(" ");ps.print(se.getSno());ps.print(" ");ps.println(se.getAge());}ps.close();}catch(IOException e){}}void displayAllStudent(int displaySource){String name,sno;int age;if(displaySource==1){ studentSet.removeAllElements();try{Scanner ps=new Scanner(new FileInputStream("sp3.txt"));while(ps.hasNext()){name=ps.next();sno=ps.next();age=ps.nextInt();studentSet.addElement(new Student(name,sno,age));}ps.close();}catch(IOException e){}}for(Student se:studentSet){se.displayInfo();}}}public class TestStudentAll{public static void main(String args[]){int i;StudentAll stSet=new StudentAll();/* stSet.addStudent(new Student("aaa","001",25));stSet.addStudent(new Student("bbb","002",21));if(! stSet.addStudent(new Student("ccc","002",21))) System.out.println("学号雷同");stSet.addStudent(new Student("ccc","003",21));stSet.displayAllStudent(0);stSet.saveStudent();*/stSet.displayAllStudent(1);stSet.removeStudent("002");System.out.println("\n删除后信息");Collections.sort(stSet.studentSet);stSet.displayAllStudent(0);}}5-(2)import java.io.*;class FileCopy{public static void main(String[] args){try{String s1;int a=0;s1="abc"+a;int LineCount=0;BufferedReader input=new BufferedReader(new FileReader("AccessControl.java"));BufferedWriter output=new BufferedWriter(new FileWriter("test1.txt"));String c=input.readLine();String s;while(c!=null){ s=deleteComment(c);s=s.trim();if (!s.equals("")){output.write(LineCount+":"+deleteComment(c));output.newLine();System.out.println(deleteComment(c));LineCount++;}c=input.readLine();}input.close();output.close();}catch(IOException e){System.out.println(e);}}static String deleteComment(String s){int pos=0;if(s==null) return s;pos=s.indexOf("//");if (pos<0)return s;elsereturn s.substring(0,pos);}}。

相关主题