1. 程式人生 > >第二次過程性考核

第二次過程性考核

nim main 方法重載 oid git 傳值 imp lan sys

碼雲倉庫地址: https://gitee.com/ahy16012003/codes

第一題

(1)題目:

定義一個有關學生的Student類,內含類成員變量: String name、String sex、int age,所有的變量必須為私有(private)。

(2)代碼:

import java.util.Scanner;
class Student{
String name,sex;
int age;
private String getName(){
return name;
}
private void setName (String name){
this.name=name;
}
private String getSex(){
return sex;
}
private void setSex(String Sex){
this sex=sex;
}
private int getAge(){
return age;
}
private void setAge(int age){
this.age=age;
}
Student (String name,String sex,int age){
this.name=name;
this sex=sex;
this.age=age;
}
public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
String n,s;
int a;
n=in.next();
a=in.nextInt();
s=in.next();
Student student= new Student (n,s,a);
System.out.println("Student [name="+student.name+",sex="+student.sex+",age="+student.age+"]")
}
}
}

(3)程序設計思路:

引入java的輸入函數,定義Student類,定義Student的構造方法,定義toString方法,並按格式輸出“類名 [name=, sex=, age=]”,最後調用子類。

 涉及知識點:子類與繼承

(4)輸出結果:

Student [name=‘tom‘, sex=‘male‘, age=15]

第二題

(1)題目:

請補充以下代碼,完成輸出要求。(註意:需要提交完整代碼)

(2)代碼:

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a,b,c,d,e;
a = in.nextInt();
b = in.nextInt();
c = in.nextInt();
d = in.nextInt();
e = in.nextInt();
RR rr = new RR();
double dd = rr.fun(a,b,c,d,e);
System.out.printf("%.2f",dd);
}
}
class RR{
public int fun (int a,int b,int c,int d,int e){
return (a+b+c+d+e)/5;
}

}

(3)程序設計思路:

先定義RR類,之後在return傳出返回值的時候編寫平均數式子

(4)輸出結果:

3.00

第三題

(1)題目:

程序填空題。根據題目要求完善下面的代碼。請提交完整代碼。 一個木塊如果高度比寬度大,我們說它是豎著放的,否則我們說它是平放的。 讀入一個木塊的高度和寬度。如果它是平放的,則輸出A,否則輸出B。

(2)代碼:

import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int height, width;
char status;
height = in.nextInt();
width = in.nextInt();
Board board = new Board(height, width);
status = board.getStatus();
System.out.print(status);
}
}
class Board{
int height, width;
public Board(int height, int width){
this.height = height;
this.width = width;
}
public char getStatus(){
if(height<=width){
return status(1);
}else{
return status(1.0);
}
}
public char status(double rate){
System.out.println("B");
return 0;


}
public char status(int rate){
System.out.println("A");
return 0;

}
}

(3)涉及知識點:

方法重載,參數傳值

(4)輸出結果:

50 50

A

第三題

(1)題目:

程序改錯題。以下代碼存在錯誤,請修改後提交。

(2)代碼:

public class Main {
public static void main(String[] args) {
Animal animal = new Dog();
animal.shout();
animal.run();
}
}

class Animal {
void shout() {
System.out.println("animal shout!");
}

public void run() {

}
}

class Dog extends Animal {
void shout() {
super.shout();
System.out.println("wangwang……");
}

public void run() {
System.out.println("Dog is running");
}
}

(3)涉及知識點:子類的繼承

(4)輸出結果:

animal shout!

wangwang……

Dog is running

另:2 3 4 題在考試的時候運用了老師新給的軟件,提高了效率和準確率

第二次過程性考核