南邮-JAVA实验课(二)
程序员文章站
2022-06-20 20:24:30
...
第二次实验
本次实验主要练习知识点是:
方法的声明和调用
数组的声明、创建、初始化和使用
类的定义
对象的创建和使用
构造方法的使用
包的创建和使用
1、寻找并输出11~999之间的数m,它满足m、m2、m3均为回文数。回文数是各位数字左右对称的整数。判断是否为回文要求通过编写方法来完成。
public class Main{
static boolean huiwen(int i) {
int m,n;
m = i;
n= 0;
while(m!=0) {
n += m%10;
n *= 10;
m = m/10;
}
if(n/10==i)
return true;
else
return false;
}
public static void main(String args[]){
for (int i = 11;i <= 999;i++){
if(huiwen(i)&&huiwen(i*i)&&huiwen(i*i*i))
System.out.print(i+" ");
}
}
}
2、由键盘输入10个整数,比较并输出其中的最大值和最小值。
import java.util.*;
public class Main{
public static void main(String args[]){
int number = 0, max = 0, min = 0;
Scanner s = new Scanner(System.in);
number = s.nextInt();
min = number;
max = number;
for(int i = 0;i < 9;i++){
number = s.nextInt();
if(number < min){
min = number;
}else if(number > max){
max = number;
}
}
System.out.println("max="+max+",min="+min+".");
}
}
3、随机产生50个1-100之间的整数,存放于一个105的二维数组中,要求按照105的格式打印这个数组(即共显示10行,每行5个数,数与数之间间隔一个空格),并求出该数组所有元素之和。
import java.util.*;
import java.io.*;
public class Main3{
public static void main(String args[]){
int sum = 0;
int[][] array = new int[10][5];
Random r = new Random();
for(int i = 0;i<10;i++){
for(int j = 0;j < 5;j++){
array[i][j] = r.nextInt(100);
sum += array[i][j];
}
}
System.out.println("随机产生的数组如下:");
for(int i = 0;i<10;i++){
for(int j = 0;j < 5;j++){
System.out.printf("%4d" , array[i][j]);
}
System.out.println();
}
System.out.println("sum = "+sum);
}
}
4、学生类的创建和使用
①创建一个学Student类,成员变量包括:学号、班号、姓名、性别、年龄等,且都是private类型。
②声明一个构造方法,初始化所有成员变量。
③分别声明获得各属性的public类型的成员方法,方法名要求以get开头。
④分别声明修改各属性的public类型的成员方法,方法名要求以set开头。
⑤声明一个public类型的toString()方法,把该类中的所有域信息组合成一个字符串。
⑥声明统计创建Student对象的个数的私有域count和得到Student对象的个数的public方法。
⑦将类Student放在子包student中。
⑧在子包student外,创建测试类Student的主类。
在主类中:创建2个Student对象,输出对象的所有域信息;修改对象的姓名和年龄,输出修改后的姓名和年龄;比较两个Student对象的年龄的大小,输出年龄较大的Student对象。
package com.dainelcw;
import com.dainelcw.student.Student;
public class Main {
public static void main(String args[]) {
Student std1, std2;
std1 = new Student("B16031114","B160311","Dainelcw","男",22);
std2 = new Student("B16031100","B160311","Dainelcw1","男",23);
System.out.println(std1.ToString());
System.out.println(std2.ToString());
System.out.println("对象个数:" + std2.get_count());
std2.set_Age(24);
std2.set_Name("B16031101");
String sp;
sp = std1.get_Age()>std2.get_Age()?std1.ToString():std2.ToString();
System.out.println(sp);
}
}
package com.dainelcw.student;
public class Student {
private String StuNub,ClassNub,Name,Sex;
private int Age;
public static int count = 0;
public Student(String StuNub,String ClassNub,String Name,String Sex,int Age){
this.StuNub = StuNub;
this.ClassNub = ClassNub;
this.Name = Name;
this.Sex = Sex;
this.Age = Age;
count++;
}
public String get_StuNub() {
return StuNub;
}
public String get_ClassNub() {
return ClassNub;
}
public String get_Name() {
return Name;
}
public String get_Sex() {
return Sex;
}
public int get_Age() {
return Age;
}
public void set_StuNub(String StuNub) {
this.StuNub = StuNub;
}
public void set_ClassNub(String ClassNub) {
this.ClassNub = ClassNub;
}
public void set_Name(String Name) {
this.Name = Name;
}
public void set_Sex(String Sex) {
this.Sex = Sex;
}
public void set_Age(int Age) {
this.Age = Age;
}
public static int get_count() {
return count;
}
public String ToString() {
String s = "学号:"+StuNub +",班级:" + ClassNub + ",姓名:" + Name + ",性别:" + Sex + ",年龄:" + Age ;
return s;
}
}