第二次过程性考核

Posted wslgx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二次过程性考核相关的知识,希望对你有一定的参考价值。

码云仓库的地址:https://gitee.com/wslgx/projects

7-1 学生类-构造函数 (10 分)

定义一个有关学生的Student类,内含类成员变量: String name、String sex、int age,所有的变量必须为私有(private)。

1.编写有参构造函数:

能对name,sex,age赋值。

2.覆盖toString函数:

按照格式:类名 [name=, sex=, age=]输出。使用idea自动生成,然后在修改成该输出格式

3.对每个属性生成setter/getter方法

4.main方法中

?输入1行name age sex , 调用上面的有参构造函数新建对象。

输入样例:

tom 15 male

输出样例:

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

技术分享图片
 1 import java.util.Scanner;
 2 class Student{
 3   private String name;
 4   private String sex;
 5   private int age;
 6   public String getName(){
 7       return name;
 8   }
 9   public void setName(String name){
10       this.name=name;
11   }
12   public String getSex(){
13       return name;
14   }
15   public void setSex(String Sex){
16       this.sex=sex;
17   }
18   public int getAge(){
19       return age;
20   }
21   public void setAge(int age){
22       this.age=age;
23   }
24   Student (String name,String sex,int age){
25       this.name=name;
26       this.sex=sex;
27       this.age=age;
28   }
29   public void toString(String n, int a, String s) {   
30       this.name = n;
31       this.sex = s;
32       this.age = a;
33       System.out.println("Student [name=‘" + this.name + "‘, sex=‘" + this.sex + "‘, age=" + this.age + "]");
34   }
35 }
36 public class Main{
37     public static void main (String[] args){
38         Scanner reader = new Scanner(System.in);
39         String n;
40         String s;
41         int a;
42         n=reader.next();
43         a=reader.nextInt();
44         s=reader.next();
45         Student ww = new Student(n,s,a);
46         ww.toString(n,a,s);
47         reader.close();
48     }
49 }
View Code

程序设计思路:定义学生类,对name,sex,age赋值,定义构造方法,生成setter/gette方法,覆盖实现toString函数以便打印输入该类对象时输出类名 [name=, sex=, age=]。main方法中调用有参构造函数新建对象。

使用到的知识点:创建类和对象,构造方法,定义方法,调用有参函数等。

 技术分享图片

7-2 定义类 (5 分)

请补充以下代码,完成输出要求。(注意:需要提交完整代码)

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{



}

输入格式:

在一行中给出5个不超过1000的正整数。

输出格式:

输出5个整数的平均值,保留小数点后两位。

输入样例:

1 2 3 4 5

输出样例:

3
技术分享图片
 1 import java.util.Scanner;
 2 public class Main {
 3     public static void main(String[] args) {
 4                 Scanner in = new Scanner(System.in);
 5                 int a,b,c,d,e;
 6                 a = in.nextInt();
 7                 b = in.nextInt();
 8                 c = in.nextInt();
 9                 d = in.nextInt();
10                 e = in.nextInt();
11                 RR rr = new RR();
12                 double dd = rr.fun(a,b,c,d,e);
13                 System.out.printf("%.2f",dd);
14     }
15 }
16 class RR{
17     public double fun(int a,int b,int c,int d,int e){
18                 return (a+b+c+d+e)/5;
19     }
20 }
View Code

程序设计思路:定义RR类然后在return传出返回值的时候编写平均数式子输出5个数的平均值。

使用到的知识点:参数传值,类的定义。

 技术分享图片

7-3 横平竖直 (5 分)

程序填空题。根据题目要求完善下面的代码。请提交完整代码。 一个木块如果高度比宽度大,我们说它是竖着放的,否则我们说它是平放的。 读入一个木块的高度和宽度。如果它是平放的,则输出A,否则输出B。

 

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){

 

} public char status(int rate){

} }

 

输入格式:

输入在一行中给出2个绝对值不超过1000的正整数A和B。

输出格式:

在一行中输出一个字符A或者B。

输入样例:

50 50

输出样例:

A
技术分享图片
 1 import java.util.Scanner;
 2 public class Main{
 3     public static void main(String[] args){
 4         Scanner in = new Scanner(System.in);
 5         int height, width;
 6         char status;
 7         height = in.nextInt();
 8         width = in.nextInt();
 9         Board board = new Board(height, width);
10         status = board.getStatus();
11         System.out.print(status);
12     }
13 }
14 class Board{
15    int height, width;
16    public Board(int height, int width){
17        this.height = height;
18        this.width = width;
19    }
20    public char getStatus(){
21        if(height<=width){
22           return status(1);
23        }else{
24          return status(1.0);
25        }
26    }
27    public char status(double rate){
28        return ‘B‘;
29    }
30    public char status(int rate){
31        return ‘A‘;
32    }
33 }
View Code

程序设计思路:根据题意可知:如果高度大于宽度,则输出A,否则输出B。

使用到的知识点:方法重载 ,参数传值。

 技术分享图片

7-4 程序改错题2 (5 分)

程序改错题。以下代码存在错误,请修改后提交。

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!");
	}
}

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

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

输入格式:

输出格式:

输入样例:

输出样例:

animal shout!
wangwang……
Dog is running
技术分享图片
 1 public class Main {
 2     public static void main(String[] args) {
 3         Animal animal = new Dog();
 4         animal.shout();
 5         animal.run();
 6     }
 7 }
 8 
 9 class Animal {
10     void shout() {
11         System.out.println("animal shout!");
12     }
13     void run(){
14       
15     }
16 }
17 
18 class Dog extends Animal {
19     void shout() {
20         super.shout();
21         System.out.println("wangwang……");
22     }
23 
24     void run() {
25         System.out.println("Dog is running");
26     }
27 }
View Code

 程序设计思路:类animal中有void shout但没有void run,补充即可。

使用到的知识点:子类的继承性,对象的上转型对象。

技术分享图片

学习内容 代码 博客
类与对象,子类和继承 339 600

 

以上是关于第二次过程性考核的主要内容,如果未能解决你的问题,请参考以下文章

第二次过程性考核

第二次过程性考核

第二次过程性考核

第二次过程性考核——面向对象程序设计

[2018-2019上 网络工程] 第二次过程性考核

第二次过程性考核