Thứ Ba, 27 tháng 11, 2012

Đề kiểm tra java kèm code đáp án

1.Tạo 1 interface tên opp có 2 phương thức
Nhap();
HienThi();
2.Tạo lớp abstract absNguoi kế thừa opp

 


6.Xây dựng menu với các chức năng sau:
1 . Nhập vào thông tin các lớp học
2. Xem thông tin chi tiết từng lớp
3. Loại bỏ 1 lớp học
4. Chuyển lớp 1 học sinh
5.Thoát

CODE

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package opp;
import java.util.*;
/**
 *
 * @author tien-www.kenhdaihoc.com
 */
interface iInOut{
    public void Nhap();
    public void Hienthi();
}
abstract class absNguoi implements iInOut{
    private String ten,diachi,tuoi;
    public void setTen(String Ten){
        this.ten=Ten;
    }
    public String getTen(){
        return this.ten;
    }
    public void setDiaChi(String diachi){
        this.diachi=diachi;
    }
    public String getDiaChi(){
        return this.diachi;
    }
    public void setTuoi(String tuoi){
        this.tuoi=tuoi;
    }
    public String getTuoi(){
        return this.tuoi;
    }
}
class clsSinhVien extends absNguoi{
    String masv;
    public void setMasv(String masv){
        this.masv=masv;
    }
    public String getMasv(){
        return this.masv;
    }
    public void Nhap(){
        Scanner sc=new Scanner(System.in);
        System.out.print("\n\tMã sinh viên: ");
        setMasv(sc.nextLine());
        System.out.print("\n\tTên sinh viên: ");
        setTen(sc.nextLine());
        System.out.print("\n\tĐịa chỉ sinh viên: ");
        setDiaChi(sc.nextLine());
        System.out.print("\n\tTuổi sinh viên: ");
        setTuoi(sc.nextLine());
    }
    public void Hienthi(){
        System.out.print("\n\t"+getMasv()+"\t"+getTen()+"\t"+getDiaChi()+"\t"+getTuoi());
    }            
}
class clsGiaoVien extends absNguoi{
    String Magv,MaNgach;
    public void setMagv(String magv){
        this.Magv=magv;
    }
    public String getMagv(){
        return this.Magv;
    }
    public void setMaNgach(String mangach){
        this.MaNgach=mangach;
    }
    public String getMaNgach(){
        return this.MaNgach;
    }
    public void Nhap(){
        Scanner sc=new Scanner(System.in);
        System.out.print("\n\tMã giáo viên: ");
        setMagv(sc.nextLine());
        System.out.print("\n\tMã ngạch giáo viên: ");
        setMaNgach(sc.nextLine());
        System.out.print("\n\tTên giáo viên: ");
        setTen(sc.nextLine());
        System.out.print("\n\tĐịa chỉ giáo viên: ");
        setDiaChi(sc.nextLine());
        System.out.print("\n\tTuổi giáo viên: ");
        setTuoi(sc.nextLine());
    }
    public void Hienthi(){
        System.out.print("\n\t"+getMagv()+"\t"+getMaNgach()+"\t"+getTen()+"\t"+getDiaChi()+"\t"+getTuoi());
    }    
}
class clsLop{
    String malop,tenlop;
    clsGiaoVien gvcn=new clsGiaoVien();
    ArrayList<clsSinhVien> dssv=new ArrayList<clsSinhVien>();
    public void setMaLop(String malop){
        this.malop=malop;
    }
    public String getMaLop(){
        return this.malop;
    }
    public void setTenLop(String tenlop){
        this.tenlop=tenlop;
    }
    public String getTenLop(){
        return this.tenlop;
    }
    public void setGV(clsGiaoVien gv){
        gvcn=gv;
    }
    public clsGiaoVien getGV(){
        return this.gvcn;
    }
    public void setdssv(clsSinhVien sv){
        dssv.add(sv);
    }
    public ArrayList<clsSinhVien> getdssv(){
        return this.dssv;
    }
    public void Nhap(){
        Scanner sc=new Scanner(System.in);
        System.out.print("\nNhập vào mã lớp: ");
        setMaLop(sc.nextLine());
        System.out.print("\nNhập vào tên lớp: ");
        setTenLop(sc.nextLine());
        System.out.print("\nNhập vào thông tin giáo viên: ");
        gvcn.Nhap();
        System.out.print("\nNhập vào danh sách sinh viên: ");
        int nhap;
        do{
            clsSinhVien sv=new clsSinhVien();
            sv.Nhap();
            dssv.add(sv);
            System.out.print("\nBấm 0 để dừng nhập danh sách sinh viên: ");
            nhap=sc.nextInt();
        }while(nhap!=0);
        
    }
    public void HienThi(){
        System.out.print("\n"+getMaLop()+"\t"+getTenLop());
        gvcn.Hienthi();
        for(clsSinhVien sv:dssv){
            sv.Hienthi();
        }
    }
    
}
public class Opp {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Scanner sc=new Scanner(System.in);
        ArrayList<clsLop> dslop=new ArrayList<clsLop>();
        int chon;
        do{
            System.out.println("\n------MENU--------");
            System.out.println("\n1.Nhập vào thông tin các lớp học");
            System.out.println("2.Xem thông tin từng lớp");
            System.out.println("3.Loại bỏ 1 lớp học");
            System.out.println("4.Chuyển lớp 1 học sinh");
            System.out.println("5.Thoát");
            chon=sc.nextInt();
            switch(chon){
                case 1:
                    int chon1;
                    do{
                        clsLop l=new clsLop();
                        l.Nhap();
                        dslop.add(l);
                        System.out.println("Bấm 0 để dừng nhập danh sách lớp: ");
                        chon1=sc.nextInt();
                    }while(chon1!=0);                 
                break;
                case 2:
                    for(clsLop l:dslop){
                        l.HienThi();
                    }
                break;
                case 3:
                    System.out.println("Nhập vào mã lớp cần xóa");
                    sc.nextLine();
                    String mlop=sc.nextLine();
                    for(clsLop l:dslop){
                        if(mlop.equals(l.getMaLop())){
                            dslop.remove(l);
                        }
                    }
                    break;
                case 4:                    
                    String malop,masv,malopden;
                    System.out.println("Nhập vào mã lớp: ");
                    sc.nextLine();
                    malop=sc.nextLine();
                    clsSinhVien sinhvien=new clsSinhVien();
                    for(clsLop l:dslop){
                        if(malop.equals(l.getMaLop())){
                            System.out.println("Nhập vào mã sinh viên cần chuyển: ");
                            masv=sc.nextLine();
                            for(clsSinhVien sv:l.getdssv()){
                                if(masv.equals(sv.getMasv())){
                                    sinhvien=sv;
                                    l.dssv.remove(sv);
                                }
                            }
                        }
                    }
                    //ma lop chuyen den
                    System.out.println("Nhập vào mã lớp chuyển đến");
                    malopden=sc.nextLine();
                    for(clsLop l:dslop){
                        if(malopden.equals(l.getMaLop())){
                            l.setdssv(sinhvien);
                        }
                    }                    
                    break;
            }
        }while(chon!=5);
    }
}

Không có nhận xét nào:

Đăng nhận xét