java上机测试题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 求1!+2!+3!+4!+……………+n!

import java.util.Scanner;

public class Test {

public static void main(String[] args) {

int i;

long sum=0;

int n=0;

System.out.println("请输入计算范围n:");

Scanner sc = new Scanner(System.in);

n = sc.nextInt();

for(i=1;i<=n;i++){

sum=jiecheng(i)+sum;

}

System.out.println("阶乘求和结果为:"+sum);

}

static long jiecheng(int m){

int j;

int s=1;

for(j=1;j<=m;j++){

s=s*j;

}

System.out.println(j-1+"! 结果为:"+s);

return s;

}

}

2 现有雇员类及其子类经理类,雇员类包含私有成员变量name ,salary;经理类还有自己的私有变量bonus; 雇员类包括方法getname ()和getsalary(),经理类除继承上述方法外,还有自己的setbonus方法,现需创建一个经理并设置其奖金金额,另建立员工数组(经理作为其一个元素),要求打印输出该员工数组的姓名和薪水信息

public class Main{

public static void main(String args[]){

Manager ma=new Manager("李",123.0);

ma.setbonus(1200.0);

System.out.println("姓名: "+ma.getname()+" 工资: "+ma.getsalary()+" 奖金为: "+ma.getbonus());

Employee[] a = new Employee[3] ;

a[0]= new Employee("赵",100.0);

a[1]=new Manager("钱",200.0);

a[2]= new Employee("孙",300.0);

System.out.println("姓名: "+a[0].getname()+" 工资: "+a[0].getsalary());

System.out.println("姓名: "+a[1].getname()+" 工资: "+a[1].getsalary());

System.out.println("姓名: "+a[2].getname()+" 工资: "+a[2].getsalary());

}

}

class Employee{

private String name;

private double salary;

Employee(){}

Employee(String a,double b){

name=a;

salary=b;

}

public String getname(){

return name;

}

public double getsalary(){

return salary;

}

}

class Manager extends Employee{

String name;

double salary;

private double bonus;

Manager(String a,double b){

name=a;

salary=b;

}

public String getname(){

return name;

}

public double getsalary(){

return salary;

}

void setbonus(double c){

bonus=c;

}

double getbonus(){

return bonus;

}

}

3求1+1/2!+1/3!+1/4!+……………+1/9!

public class Test{

public static void main(String[] args){

int i,j=1;

double x=1.0,y=1.0;

double sum=0;

for(i=1;i<=9;i++){

x=jiecheng(i);

y=1.0/x;

sum+=y;

}

System.out.println("1+1/2!+1/3!+1/4!+……………+1/9! = "+sum);

static long jiecheng(int n){

int i;

int s=1;

for(i=1;i<=n;i++){

s=s*i;

}

return s;

}

}

4现有学生类及其子类研究生类,学生类包含私有成员变量name ,credit; 研究生类还有自己的私有变量postcredit; 学生类包括方法getname ()和getcridit(),研究生类除继承上述方法外,还有自己的setpostcredit方法,现需创建一个研究生并设置其postcredit,另建立学生数组(研究生作为其一个元素),要求打印输出该学生数组的姓名和学分信息

5编写代码生成100个位于[20,1000]区间的整数。

6 编写一个方法,接收一个整数数组作为参数,此方法会找出其最大值、最小值和平均值。

要求使用递归方法实现。

7 编写一个三角形类,将求面积,周长,内切圆,外接圆等方法放入类中,并验证。

import java.io.*;

public class Test {

public static void main(String[] args) throws IOException {

sanjiao sj1=new sanjiao();

System.out.println("---调用无参空构造方法---");

System.out.println("请输入三角形的3边长度:");

BufferedReader br1= new BufferedReader(new InputStreamReader(System.in));

String s1=br1.readLine();

sj1.a=Double.parseDouble(s1);

BufferedReader br2= new BufferedReader(new InputStreamReader(System.in));

String s2=br2.readLine();

sj1.b=Double.parseDouble(s2);

BufferedReader br3= new BufferedReader(new InputStreamReader(System.in));

String s3=br3.readLine();

sj1.c=Double.parseDouble(s3);

System.out.println("面积="+sj1.mianji()+" 周长="+sj1.zhouchang()+" 内切圆半径="+sj1.neiqieyuan()+" 外切圆半径="+sj1.waiqieyuang());

System.out.println("-----------------分割线-----------------");

System.out.println("---调用有参构造方法---");

sanjiao sj2=new sanjiao(3.0,4.0,5.0);

System.out.println("边长分别为3、4、5的三角形:"+"面积="+sj2.mianji()+" 周长="+sj2.zhouchang()+" 内切圆半径="+sj2.neiqieyuan()+" 外切圆半径="+sj2.waiqieyuang());

System.out.println();

相关文档
最新文档