- 在程式中定義Person類,為該類撰寫如下欄位、構造器、訪問器、修改器和相應的其他方法,(20分)
<1>在Person類中定義兩個欄位: 私有訪問權限,型別為String的name欄位; 私有訪問權限,型別為int的age欄位,
<2>在Person類中定義構造器
構造器有兩個引數,第一個引數的型別是String,名字為name,第二個的型別是int,名字是age,第一個引數的值賦給欄位name,第二個引數的值賦給欄位age,
<3>為Person類的兩個欄位分別撰寫訪問器方法,方法名稱分別為getName和getAge,getName方法回傳型別為String的name欄位的值;getAge方法回傳型別為int的age欄位的值,
<4>為Person類的兩個欄位分別撰寫修改器方法,方法名稱分別為setName和setAge,setName方法有一個String型別的引數,方法中用該引數來設定欄位name的值;setAge方法有一個int型別的引數,方法中用該引數來設定欄位age的值,并且保證age欄位的值不能為負數,如果要將age設定為負數則給出錯誤提示,
<5> 在main()中創建一Person型別的物件,并呼叫上面的方法,
class Person {
/* 定義string型別姓名以及int型別年齡 */
private String name;
private int age;
/* 構造器 */
public Person(String _name, int _age) {
age = _age;
name = _name;
}
/* 設定姓名以及年齡的方法 */
public void setName(String _name) {
name = _name;
}
public void setAge(int _age) {
if (_age < 0) {
/* 如果設定的年齡小于0歲列印錯誤 */
System.out.println("error");
} else {
age = _age;
}
}
/* 獲取姓名以及年齡的方法 */
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
public class App {
public static void main(String[] args) {
// 創建Person物件(p1采用建構式方式創建p2采用類方法進行資料設定)
Person p1 = new Person("小張", 18);
Person p2 = new Person(null, 0);
// 呼叫類方法設定
p2.setAge(21);
p2.setName("小李");
// 呼叫get方法輸出資訊
System.out.println(p1.getName() + "的年齡是 " + p1.getAge());
System.out.println(p2.getName() + "的年齡是 " + p2.getAge());
}
}
2、已知三個小數x,y,z,請把這三個數由大到小輸出 (20分)
public class App {
public static void main(String[] args) throws Exception {
double Num1 = 10.2;
double Num2 = 11.9;
double Num3 = 7.8;
double max = 0.0, min = 0.0;
// 如果num1大于num2和num3最大數為num1
if (Num1 > Num2 && Num1 > Num3) {
// 如果上述判斷成立則從num2和num3中判斷出最小值
if (Num2 > Num3) {
min = Num3;
} else {
min = Num2;
}
max = Num1;
} else if (Num2 > Num1 && Num2 > Num3) {
if (Num1 > Num3) {
min = Num3;
} else {
min = Num1;
}
max = Num2;
} else if (Num3 > Num2 && Num3 > Num1) {
if (Num2 > Num1) {
min = Num1;
} else {
min = Num2;
}
max = Num3;
}
// 列印出最大數值和最小數值
System.out.println("最大值是: " + max + " 最小值是:" + min);
}
}
3、求n!,如當n=6時,輸出為720 (15分)
import java.util.Scanner;
public class App {
public static void main(String[] args) throws Exception {
/* 求n的階乘 */
System.out.print("請輸入階乘數值:");
Scanner sc = new Scanner(System.in);
// 輸入一個求階乘的數值
int Num = sc.nextInt();
int value = 1;
// 求階乘核心程式
for (int i = 1; i < Num; i++) {
value += i * value;
}
// 輸出階乘數值
System.out.println(Num + "的階乘 = " + value);
// 關閉sc類
sc.close();
}
}
4、將一個陣列逆序輸出,如:原來為{1,2,3,4,5},輸出為{5,4,3,2,1} (15分)
public class App {
public static void main(String[] args) {
int[] arrList = { 1, 2, 3, 4, 5 };
// 逆序方式輸出
for (int i = arrList.length - 1; i >= 0; i--) {
System.out.print(arrList[i] + " ");
}
}
}
5、已知學生成績,如成績大于等于90,則輸出優秀;如在80到90間,則輸出良好;如在70到80間,則輸出中等;如在60到70間,則輸出及格;如在0到60間,則輸出不及格;如成績小于0或大于100,則輸出出錯) (10分)
import java.util.Scanner;
public class App {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
System.out.print("請輸入學生成績:");
double scores = sc.nextDouble();
String level;
if (scores >= 90 && scores <= 100) {
level = "優秀";
} else if (scores >= 80) {
level = "良好";
} else if (scores >= 70) {
level = "中等";
} else if (scores >= 60) {
level = "及格";
} else if (scores >= 0) {
level = "不及格";
} else {
level = "出錯";
}
System.out.println("該學生等級為:" + level);
sc.close();
}
}
2021-1-2更新階乘程式更正(階乘數值型別更改為double型別):
byte占1個位元組8位,取值范圍為-27~27-1
int占4個位元組32位,取值范圍為-231~231-1
short占2個位元組16位,取值范圍為-215~215-1
long占8個位元組64位,取值范圍為-263~263-1
float占4個位元組32位,取值范圍為3.402823e+38 ~ 1.401298e-45
double占8個位元組64位,取值范圍為1.797693e+308~ 4.9000000e-324
char占2個位元組16位,取值范圍為0~65535
boolean即true或false
import java.util.Scanner;
public class App {
public static void main(String[] args) throws Exception {
/* 求n的階乘 */
System.out.print("請輸入階乘數值:");
Scanner sc = new Scanner(System.in);
// 輸入一個求階乘的數值
int Num = sc.nextInt();
double value = 1;
// 求階乘核心程式
for (int i = 1; i < Num; i++) {
value += i * value;
}
// 輸出階乘數值
System.out.println(Num + "的階乘 = " + value);
// 關閉sc類
sc.close();
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/243818.html
標籤:java
