JAVA练习题

xiaoxiao2025-08-18  50

77 - 完数

package Main; import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin = new Scanner(System.in); int n = cin.nextInt(); int flag = 1; for (int i = 2; i <= n; i++) { int num = 1; for (int j = 2; j < i; j++) { if (i % j == 0) num += j; } if (num == i) { if (flag == 1) { System.out.print(i); flag = 0; } else { System.out.print("," + i); } } } cin.close(); } }

 

116 - Person类 

class Person { private String name; private String sex; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void print() { System.out.println("name:" + name + "; sex:" + sex + "; age:" + age); } }

117 - Person类2

class Person { private String name; private String sex; private int age; public Person(String _name, String _sex, int _age) { this.age = _age; this.name = _name; this.sex = _sex; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void print() { System.out.println("name:" + name + "; sex:" + sex + "; age:" + age); } }

120 - Person类3

import java.util.Scanner; class Person { private String name; private String sex; private int age; static private int sumage = 0; public Person(String _name, String _sex, int _age) { this.age = _age; this.name = _name; this.sex = _sex; sumage +=age; } static public int getAvgAge() { return sumage/3; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void print() { System.out.println("name:" + name + "; sex:" + sex + "; age:" + age); } } public class Main{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); String name = scan.next(); String sex = scan.next(); int age = scan.nextInt(); Person p1 = new Person(name,sex,age); name = scan.next(); sex = scan.next(); age = scan.nextInt(); Person p2 = new Person(name,sex,age); name = scan.next(); sex = scan.next(); age = scan.nextInt(); Person p3 = new Person(name,sex,age); //p3.print(); System.out.println(Person.getAvgAge()); Person.getAvgAge(); scan.close(); } }

119 - MyDate类

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int y = scan.nextInt(); int m = scan.nextInt(); int d = scan.nextInt(); MyDate date1 = new MyDate(y, m, d); y = scan.nextInt(); m = scan.nextInt(); d = scan.nextInt(); MyDate date2 = new MyDate(y, m, d); date1.print(); System.out.println(date1.compare(date2)); } } class MyDate { private int year; private int month; private int day; public MyDate(int y, int m, int d) { this.day = d; this.year = y; this.month = m; } public int compare(MyDate d) { if (year < d.year) return -1; if (year > d.year) return 1; if (month < d.month) return -1; if (month > d.month) return 1; if (day < d.day) return -1; if (day > d.day) return 1; return 0; } public void print() { System.out.print(month + "/" + day + "/" + year + " "); } public int getYear() { return year; } public void setYear(int year) { this.year = year; } public int getMonth() { return month; } public void setMonth(int month) { this.month = month; } public int getDay() { return day; } public void setDay(int day) { this.day = day; } }

190 - 长方形长方体类

class Rectangle { private double length; private double width; public Rectangle(double l, double w) { this.length = l; this.width = w; } public double getLength() { return length; } public void setLength(double length) { this.length = length; } public double getWidth() { return width; } public void setWidth(double width) { this.width = width; } public double getPerimeter() { return 2.0 * (width + length); } public double getArea() { return length * width; } } class Cuboid extends Rectangle { private double height; public Cuboid(double l, double w, double h) { super(l, w); this.height = h; } public double getPerimeter() { return 4.0 * (super.getWidth() + super.getLength() + height); } public double getArea() { return 2 * (super.getLength() * super.getWidth() + height * super.getLength() + height * super.getWidth()); } public double getVolume() { return height * super.getLength() *super.getWidth(); } }

125 - 学生、大学生、研究生类

class Student { private int num; private String name; private String sex; public Student(int _num, String _name, String _sex) { this.name = _name; this.num = _num; this.sex = _sex; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } void print() { System.out.println("no: " + num); System.out.println("name: " + name); System.out.println("sex: " + sex); } } class CollegeStudent extends Student { private String major; public CollegeStudent(int _num, String _name, String _sex, String _major) { super(_num, _name, _sex); this.major = _major; } void print() { super.print(); System.out.println("major: " + this.major); } public String getMajor() { return this.major; } } class GraduateStudent extends CollegeStudent { private String supervisor; public GraduateStudent(int _no, String _name, String _sex, String _major, String _supervisor) { super(_no, _name, _sex, _major); this.supervisor = _supervisor; } public void print() { super.print(); System.out.println("supervisor: " + this.supervisor); } public void doResearch() { System.out.println(super.getName() + " is doing research"); } }

 

129 - Shape类

abstract class Shape { public abstract double getPerimeter(); public abstract double getArea(); } class Square extends Shape { private double length; public Square(double l) { this.length = l; } public double getPerimeter() { return 4.0 * length; } public double getArea() { return length * length; } } class Rectangle extends Shape { private double length, width; public Rectangle(double l, double w) { this.length = l; this.width = w; } public double getPerimeter() { return 2.0 * (length + width); } public double getArea() { return length * width; } } class Circle extends Shape { private double r; public Circle(double rr) { this.r = rr; } public double getPerimeter() { return 6.2830 * r; } public double getArea() { return 3.14159 * r * r; } }

132 - 员工类-2

import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin = new Scanner(System.in); int s = cin.nextInt(); Manager m = new Manager(s); s = cin.nextInt(); int r = cin.nextInt(); Saleman sal = new Saleman(s, r); int d = cin.nextInt(); s = cin.nextInt(); Worker w = new Worker(d, s); System.out.println(m.getSalary()); System.out.println(sal.getSalary()); System.out.println(w.getSalary()); } } abstract class Employee { abstract public int getSalary(); } class Manager extends Employee { private int salary; public Manager(int s) { salary = s; } public int getSalary() { return salary; } } class Saleman extends Employee { private int salary; private int raise; public Saleman(int s, int r) { salary = s; raise = r; } public int getSalary() { return salary + raise; } } class Worker extends Employee { private int days; private int salary; public Worker(int d, int s) { days = d; salary = s; } public int getSalary() { return salary * days; } }

 

134 - Shape类-3 && 133 - Shape类-2

abstract class Shape { public abstract double getPerimeter(); public abstract double getArea(); } class Square extends Shape { private double length; public Square(double l) { this.length = l; } public double getPerimeter() { return 4.0 * length; } public double getArea() { return length * length; } public double getLength() { return this.length; } } class Rectangle extends Square { private double width; public Rectangle(double l, double w) { super(l); this.width = w; } public double getPerimeter() { return 2.0 * (super.getLength() + width); } public double getArea() { return super.getLength() * width; } } class Circle extends Shape { private double r; public Circle(double rr) { this.r = rr; } public double getPerimeter() { return 6.2830 * r; } public double getArea() { return 3.14159 * r * r; } }

 

import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin = new Scanner(System.in); int n = cin.nextInt(); String s = cin.next(); if(n == 1) { FootballMatch f = new FootballMatch(s); f.HoldBallMatch(); } else { BasketBallMatch f = new BasketBallMatch(s); f.HoldBallMatch(); } } } abstract class BallMatch { public final void HoldBallMatch() { checkin(); start(); play(); end(); annouceResult(); } private void checkin() { System.out.println("now checking in"); } private void start() { System.out.println("now starting"); } private void end() { System.out.println("now ending"); } public abstract void play(); public abstract void annouceResult(); } class FootballMatch extends BallMatch { String score; public FootballMatch(String s) { score = s; } public void play() { System.out.println("now playing football"); } public void annouceResult() { System.out.println("now annoucing result: "+score); } } class BasketBallMatch extends BallMatch { String score; public BasketBallMatch(String s) { score = s; } public void play() { System.out.println("now playing BasketBallMatch"); } public void annouceResult() { System.out.println("now annoucing result: "+score); } }

138 - 打球过程

import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin = new Scanner(System.in); int n = cin.nextInt(); String s = cin.next(); if(n == 1) { FootballMatch f = new FootballMatch(s); f.HoldBallMatch(); } else { BasketBallMatch f = new BasketBallMatch(s); f.HoldBallMatch(); } } } abstract class BallMatch { public final void HoldBallMatch() { checkin(); start(); play(); end(); annouceResult(); } private void checkin() { System.out.println("now checking in"); } private void start() { System.out.println("now starting"); } private void end() { System.out.println("now ending"); } public abstract void play(); public abstract void annouceResult(); } class FootballMatch extends BallMatch { String score; public FootballMatch(String s) { score = s; } public void play() { System.out.println("now playing football"); } public void annouceResult() { System.out.println("now annoucing result: "+score); } } class BasketBallMatch extends BallMatch { String score; public BasketBallMatch(String s) { score = s; } public void play() { System.out.println("now playing basketball"); } public void annouceResult() { System.out.println("now annoucing result: "+score); } }

140 - 家电类

import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); int n = cin.nextInt(); Appliance[] a = new Appliance[n]; for(int i = 0 ;i <n; i++) { int num,h; num = cin.nextInt(); h = cin.nextInt(); if(num == 1) { a[i] = new TV(h); } else if(num == 2) { a[i] = new WashMachine(h); } else { a[i] = new AirConditioner(h); } } Truck t = new Truck(a); System.out.println(t.getSumHeavy()); } } interface Appliance { int getheavy(); } class TV implements Appliance { int heavy; public TV(int h) { heavy = h; } public int getheavy() { return heavy; } } class WashMachine implements Appliance { int heavy; public WashMachine(int h) { heavy = h; } public int getheavy() { return heavy; } } class AirConditioner implements Appliance { int heavy; public AirConditioner(int h) { heavy = h; } public int getheavy() { return heavy; } } class Truck { private Appliance t[]; public Truck(Appliance[] x) { t = x; } public int getSumHeavy() { int sum = 0; for (int i = 0; i < t.length; i++) sum += t[i].getheavy(); return sum; } }

150 - 教师类

import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); int no = cin.nextInt(); String name = cin.next(); int age = cin.nextInt(); String s = cin.next(); Teacher t1 = new Teacher(no, name, age, s); System.out.println(t1.toString()); no = cin.nextInt(); name = cin.next(); age = cin.nextInt(); s = cin.next(); Teacher t2 = new Teacher(no, name, age, s); System.out.println(t2.toString()); System.out.println(t1.equals(t2)); } } class Teacher { private int no, age; String name, seminary; public Teacher(int num, String n, int a, String s) { no = num; age = a; name = n; seminary = s; } public int getNo() { return no; } public void setNo(int no) { this.no = no; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSeminary() { return seminary; } public void setSeminary(String seminary) { this.seminary = seminary; } public String toString() { return "no: " + no + ", name:" + name + ", age: " + age + ", seminary: " + seminary; } public boolean equals(Teacher t) { return this.age == t.getAge() && this.no == t.getNo() && this.name.equals(t.getName()) && this.seminary.equals(t.getSeminary()); } }

149 - 教师类-2

import java.lang.reflect.Array; import java.util.*; import javax.lang.model.type.ArrayType; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); int n = cin.nextInt(); Teacher[] t = new Teacher[n]; TeacherManagement tm = new TeacherManagement(); tm.add(t); for (int i = 0; i < n; i++) { int no = cin.nextInt(); String name = cin.next(); int age = cin.nextInt(); String s = cin.next(); t[i] = new Teacher(no, name, age, s); } Arrays.sort(t); for (int i = 0; i < t.length; i++) { System.out.println(t[i].toString()); } String name = cin.next(); Vector<String> v = tm.search(name); System.out.println("search by name:"); if(v.isEmpty()) { System.out.println("no such teacher"); } else { for (int i = 0; i < v.size(); i++) System.out.println(v.elementAt(i)); } v.clear(); int age = cin.nextInt(); v = tm.search(age); System.out.println("search by age:"); if(v.isEmpty()) { System.out.println("no such teacher"); } else { for (int i = 0; i < v.size(); i++) System.out.println(v.elementAt(i)); } v.clear(); cin.close(); } } class Teacher implements Comparable<Teacher> { private int no, age; String name, seminary; public Teacher(int num, String n, int a, String s) { no = num; age = a; name = n; seminary = s; } public int compareTo(Teacher t) { if (this.getNo() > t.getNo()) return 1; else if (this.getNo() < t.getNo()) return -1; return 0; } public int getNo() { return no; } public void setNo(int no) { this.no = no; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSeminary() { return seminary; } public void setSeminary(String seminary) { this.seminary = seminary; } public String toString() { return "no: " + no + ", name: " + name + ", age: " + age + ", seminary: " + seminary; } public boolean equals(Teacher t) { return this.age == t.getAge() && this.no == t.getNo() && this.name.equals(t.getName()) && this.seminary.equals(t.getSeminary()); } } class TeacherManagement { Teacher[] t; public TeacherManagement() { t = null; } public void add(Teacher[] s) { t = s; } public Vector<String> search(String name) { Vector<String> v = new Vector<String>(); for (int i = 0; i < t.length; i++) { if (t[i].getName().equals(name)) v.addElement(t[i].toString()); } return v; } public Vector<String> search(int age) { Vector<String> v = new Vector<String>(); for (int i = 0; i < t.length; i++) { if (t[i].getAge() == age) v.addElement(t[i].toString()); } return v; } }

 142 - 计算机类

import java.lang.reflect.Array; import java.util.*; import javax.lang.model.type.ArrayType; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); String model1 = cin.next(); double num = cin.nextDouble(); int num1 = cin.nextInt(); String model2 = cin.next(); String model3 = cin.next(); int num3 = cin.nextInt(); String model4 = cin.next(); int num4 = cin.nextInt(); String model5 = cin.next(); int num5 =cin.nextInt(); Computer c1 = new Computer(model1, num ,num1, model2,model3,num3,model4,num4,model5,num5); model1 = cin.next(); num = cin.nextDouble(); num1 = cin.nextInt(); model2 = cin.next(); model3 = cin.next(); num3 = cin.nextInt(); model4 = cin.next(); num4 = cin.nextInt(); model5 = cin.next(); num5 =cin.nextInt(); Computer c2 = new Computer(model1, num ,num1, model2,model3,num3,model4,num4,model5,num5); System.out.println(c1.equals(c2)); System.out.println("Computer1:"); c1.print(); System.out.println("Computer2:"); c2.print(); } } class Computer { CPU cpu; Mainboard mainboard; Memory memory; Screen screen; Harddisk harddisk; public Computer(String model1, double frequency, int num, String model2, String model3, int num3, String model4, int num4, String model5, int num5) { cpu = new CPU(model1, frequency, num); mainboard = new Mainboard(model2); memory = new Memory(model3, num3); screen = new Screen(model4, num4); harddisk = new Harddisk(model5, num5); } public boolean equals(Computer o) { // IF(!CPU.EQUALS(O.GETCPU())) // RETURN 1; // IF(!MAINBOARD.EQUALS(O.GETMAINBOARD())) // RETURN 2; // IF(!MEMORY.EQUALS(O.GETMEMORY())) // RETURN 3; // IF(!SCREEN.EQUALS(O.GETSCREEN())) // RETURN 4; // IF(!HARDDISK.EQUALS(O.GETHARDDISK())) // RETURN 5; // RETURN 6; return cpu.equals(o.getCpu()) && mainboard.equals(o.getMainboard()) && memory.equals(o.getMemory()) && screen.equals(o.getScreen()) && harddisk.equals(o.getHarddisk()); } public void print() { System.out.println("CPU:"); System.out.println(cpu.toString()); System.out.println("Mainboard:"); System.out.println(mainboard.toString()); System.out.println("Memory:"); System.out.println(memory.toString()); System.out.println("Screen:"); System.out.println(screen.toString()); System.out.println("Harddisk:"); System.out.println(harddisk.toString()); } public CPU getCpu() { return cpu; } public void setCpu(CPU cpu) { this.cpu = cpu; } public Mainboard getMainboard() { return mainboard; } public void setMainboard(Mainboard mainboard) { this.mainboard = mainboard; } public Memory getMemory() { return memory; } public void setMemory(Memory memory) { this.memory = memory; } public Screen getScreen() { return screen; } public void setScreen(Screen screen) { this.screen = screen; } public Harddisk getHarddisk() { return harddisk; } public void setHarddisk(Harddisk harddisk) { this.harddisk = harddisk; } } class CPU { private String model; private double basicFrequency; private int Kernelnumber; public CPU(String s, double b, int k) { model = s; basicFrequency = b; Kernelnumber = k; } public boolean equals(CPU o) { return model.equals(o.getModel()) && basicFrequency == o.getBasicFrequency() && Kernelnumber == o.getKernelnumber(); } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public double getBasicFrequency() { return basicFrequency; } public void setBasicFrequency(double basicFrequency) { this.basicFrequency = basicFrequency; } public int getKernelnumber() { return Kernelnumber; } public void setKernelnumber(int kernelnumber) { Kernelnumber = kernelnumber; } public String toString() { return "Model: " + model + "\nFrequency: " + basicFrequency + "\nNumber of Cores: " + Kernelnumber; } } class Mainboard { private String model; public Mainboard(String s) { model = s; } public String toString() { return "Model: " + model; } public boolean equals(Mainboard o) { return model.equals(o.getModel()); } public String getModel() { return model; } public void setModel(String model) { this.model = model; } } class Memory { private String model; private int vol; public Memory(String m, int v) { model = m; vol = v; } public boolean equals(Memory o) { return vol == o.getVol() && model.equals(o.getModel()); } public String toString() { return "Model: " + model + "\nSize: " + vol; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public int getVol() { return vol; } public void setVol(int vol) { this.vol = vol; } } class Screen { private String model; private int Size; public Screen(String m, int s) { model = m; Size = s; } public boolean equals(Screen o) { return Size == o.getSize() && model.equals(o.getModel()); } public String toString() { return "Model: " + model + "\nSize: " + Size; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public int getSize() { return Size; } public void setSize(int size) { Size = size; } } class Harddisk { private String model; private int Size; public Harddisk(String m, int s) { model = m; Size = s; } public boolean equals(Harddisk o) { return Size == o.getSize() && model.equals(o.getModel()); } public String toString() { return "Model: " + model + "\nSize: " + Size; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public int getSize() { return Size; } public void setSize(int size) { Size = size; } }

139 - 整数数组比较

import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); int n = cin.nextInt(); int[] a = new int[n]; for (int i = 0; i < n; i++) a[i] = cin.nextInt(); int[] b = a.clone(); Arrays.sort(b); int num1 = 0; int num2 = 0; int num3 = 0; for (int i = 0; i < n; i++) { if (a[i] > b[i]) num1++; else if (a[i] == b[i]) num2++; else num3++; } System.out.println(num1); System.out.println(num2); System.out.println(num3); cin.close(); } }

151 - 矩阵类

153 - 判断回文

import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner cin = new Scanner(System.in); int num = cin.nextInt(); Integer n = num; String s = n.toString(); System.out.println(s.length()); boolean flag = true; for (int i = 0; i < s.length() / 2; i++) { if (s.charAt(i) != s.charAt(s.length() - i - 1)) { flag = false; break; } } if (flag == true) System.out.println("Y"); else System.out.println("N"); } }

 

转载请注明原文地址: https://www.6miu.com/read-5035021.html

最新回复(0)