第十四章

1.根据目录结构myjava\practice1\Foo.java.写出foo类的包名。
包名:package myjava.practice1;

2.改写第12章简答题第3题中的计算器类(Calculator)。要求将加减乘除的方法改写带参数的方法,再定义一个运算方法ope(),接收用户选择的运算和两个数字,根据用户选择的运算计算结果。
public class Calculator {
int s;//运算结果
public int ope(int op,int num1,int num2){
switch(op){
case 1:
s=num1+num2;
break;
case 2:
s=num1-num2;
break;
case 3:
s=num1*num2;
break;
case 4:
s=num1/num2;
break;
default:
System.out.println(“请输入正确的数字:”);
break;
}
return s;
}

}

public class TesCalc {
public static void main(String[] args) {
Calculator a=new Calculator();
Scanner input=new Scanner(System.in);
System.out.println(“请输入第一个数:”);
int num1=input.nextInt();
System.out.println(“请输入第二个数:”);
int num2=input.nextInt();
System.out.println(“请选择运算:1.加法2.减法3.乘法4.除法”);
int choose=input.nextInt();
System.out.println(“运算结果为:”+a.ope(choose,num1,num2));

}

}
第三题:模拟一个简单的购房商贷月供计算器,假设按照以下的公式计算出总利息和每月还款金额,

总利息 = 贷款金额 × 利率
每月还款金额 = (贷款金额 + 总利息) ÷ 贷款年限
贷款年限不同,利率是不相同的,规定只有三总年限,利率
年限:3年(36个月) ,利率:6.03%
年限:5年(60个月) ,利率:6.12%
年限:20年(240个月) ,利率:6.39%
代码如下:
public class Loan {
int month; //定义月限
double rate; //定义利率
double amount;//定义每月还款金额
double money; //定义总利息
public double loan(double loan,int yearchoice){
switch(yearchoice){
case 1:
rate=0.0603;
money=loanrate;
month=36;
break;
case 2:
rate=0.0612;
money=loan
rate;
month=60;
break;
case 3:
rate=0.0639;
money=loan*rate;
month=240;
break;
default:
System.out.println(“请输入正确年份:”);
break;}
amount=(loan+money)/month;
System.out.println("*****月供为:"+ amount);
return amount;

	}
}

public class LoanTest {
public static void main(String[] args) {
Loan a=new Loan();
Scanner input=new Scanner(System.in);
System.out.println(“请输入贷款金额:”);
int loan=input.nextInt();
System.out.println(“请选择贷款年限:1.3年(36个月) 2.5年(60个月) 3.20年(240个月)”);
int se=input.nextInt();
a.loan(loan, se);
}

}

第四题:根据指定不同的行及字符,生成不同的三角形。
代码如下:
public class Xing {
public void printTriangle(int row,String ch){
for (int i = 1; i <=row; i++) {
for (int j = 1; j <=i; j++) {
System.out.print(ch);

		}
		System.out.println("");
	}
}

}
public class XingTest {
public static void main(String[] args) {
Xing a=new Xing();
Scanner input=new Scanner(System.in);
System.out.print(“请输入行高:”);
int row1=input.nextInt();
System.out.print(“请输入打印的字符:”);
String ch1=input.next();
a.printTriangle(row1,ch1);
}

}
第五题:根据三角形的三条边长,判断其是直角,钝角,还是锐角三角形,程序要求如下:
先输入三角形三条边的边长
判断是否构成三角形,构成三角形的条件是”任意两边之和大于第三边”,如果不能构成三角形则提示”不是三角形”
如果能构成三角形,判断三角形是何种三角形,如果三角形有一条边的平方等于其他两条边平方的和,则为直角三角形,如果有一条边的平方大于其他两条边平方的和,则为钝角三角形,否则为,直角三角形。在这里插入图片描述
在这里插入图片描述
第六题:编写向整型数组的指定位置插入元素,并输出插入前后数组的值 。

public class shuzu {
public void insertArray(int[] arr, int index, int value) {
int array[] = new int[arr.length + 1];
for (int i = 0; i < arr.length; i++) {
array[i] = arr[i];
}
for (int i = array.length - 1; i > index; i–) {
array[i] = array[i - 1];
}
array[index] = value;
System.out.println(“插入后的数组:”);
for (int i = 0; i < array.length; i++) {
if (array[i] != 0) {
System.out.print(array[i] + “\t”);
}
}
}
}
public class shuzuTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
shuzu sc = new shuzu();
int arr[] = new int[7];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;
arr[5] = 6;
arr[6] = 7;
System.out.println(“插入前的数组:”);
for (int i = 0; i < arr.length; i++) {
if (arr[i] != 0) {
System.out.print(arr[i] + “\t”);
}
}
System.out.print("\n请输入要插入数组的位置:");
int index = input.nextInt();
System.out.print(“请输入要插入的整数:”);
int value = input.nextInt();
sc.insertArray(arr, index, value);
}

}

第七题:本学期期末学员共参加了三门课的考试,即Java,C# , SQL,编写方法计算每位同学三门课程的平均分
代码如下:public class Student {
int java; //Java成绩
int C; //C#成绩
int sql; //数据库成绩

    Student[] student = new Student[30];
    public void getAvg(Student stu) {
        for (int i = 0; i < student.length; i++) {
            if (student[i] == null) {
                student[i] = stu;
                break;
            }
        }
    }
    public void getavg(int arr[], int num) {
        // 参数分别为:java成绩,c#成绩,数据库成绩,学生人数
        double[] arr2 = new double[num + 1];
        for (int i = 0; i < num + 1; i++) {
            arr2[i] = arr[i] / 3.0;
        }
        for (int i = 0; i < arr2.length; i++) {
            System.out.println("第" + (i + 1) + "位同学的平均分为:" + arr2[i]);
        }
    }

}

public class StudentTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
Student stu[] = new Student[30]; // 创建学生类对象数组
Student stus = new Student(); // 创建Student类对象
Student student = new Student(); // 创建学生类对象
int js[] = new int[stu.length]; // 创建一个数组来接收每一个学生的总成绩
int index = 0; // 获取学生的人数
for (int i = 0; i < stu.length; i++) {
int tatleScore = 0; // 初始化总成绩并每次清零;
System.out.println(“第” + (i + 1) + “位同学的成绩为:”);
System.out.print(“java成绩为:”);
student.java = input.nextInt();
System.out.print(“c#的成绩为:”);
student.C = input.nextInt();
System.out.print(“SQL的成绩为:”);
student.sql = input.nextInt();
tatleScore = student.java + student.C + student.sql;
for (int j = 0; j < js.length; j++) { // 循环用数组接收总成绩
if (js[i] == 0) {
js[i] = tatleScore;
break;
}
}
System.out.print(“是否继续输入(y/n):”);
String flag = input.next();
System.out.println("");
stus.getAvg(student); // 调用方法增加学生信息

        if (flag.equals("n")) {
            index = i;
            System.out.println("输入完成!");
            break;
        }
    }
    System.out.println("学生的平均分为:");
    stus.getavg(js, index); // 调用方法
}

}

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值