1. 程式人生 > >實訓課2

實訓課2

i++ 學分 img sta 奇數 身份證號 二維數組 數組 打印

1. 一維數組的創建和遍歷。

聲明並創建存放4個人考試成績的一維數組,並使用for循環遍歷數組並打印分數。要求:

(1) 首先按“順序”遍歷,即打印順序為:從第一個人到第四個人;

(2) 然後按“逆序”遍歷,即打印順序為:從從第四個人到第一個人;

(3) 輸出最高分;

(4) 輸出最低分;

代碼:

package class2;
import java.util.*;
public class shuzu {
public static void main(String[] args) {
int add[]=new int[4];
Scanner rd=new Scanner(System.in);
for(int i=0;i<4;i++){
add[i]=rd.nextInt();
}
for(int i=0;i<4;i++){
System.out.println("第"+(i+1)+"位同學分數為"+add[i]);
}
System.out.println(" ");
for(int i=3;i>=0;i--){
System.out.println("第"+(i+1)+"位同學分數為"+add[i]);
}
int a=add[0];
for(int j=1;j<4;j++){
if(add[j]>a){
a=add[j];
}
}
System.out.println("最高分為:"+a);
for(int j=1;j<4;j++){
if(add[j]<a){
a=add[j];
}
}
System.out.println("最低分為:"+a);
} } 運行結果: 技術分享圖片

1. Arrays類的sort方法的理解與應用(參照110頁程序)。

對無序的10個數字使用Arrays類的sort方法進行排序。要求:

² 聲明並初始化數組

² 按如下格式輸出排序後的數組

sum[0] = 1

sum[1] = 2

………………

代碼:

package class2;

public class two {

public static void main(String[] args) {
int add[]=new int[]{5,7,6,4,2,9,1,3,8,0};
int a;
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
if(add[i]<add[j]){
a=add[j];
add[j]=add[i];
add[i]=a;
}
}
}
for(int i=0;i<10;i++){
System.out.println("add["+i+"]"+"="+add[i]);
}
}
}

運行結果:

技術分享圖片

3.一個班級的學生成績存在長度為10的數組中,計算不及格的學生數目。

代碼:

package class2;
import java.util.*;
public class three {
public static void main(String[] args) {
int add[]=new int[10];
int n = 0;
Scanner rd=new Scanner(System.in);
for(int i=0;i<10;i++){
add[i]=rd.nextInt();
}
for(int j=0;j<10;j++){
if(add[j]<60){
n++;
}
}
System.out.println("不及格人數為:"+n);
}
}

運行結果為:

技術分享圖片

1. 身份證號碼的判斷。

聲明String類型的字符串,保存身份證號碼。編寫程序判斷:

1)該號碼是否為湖南長沙的號碼(判斷依據:前4位為4301,即長沙號碼;否則不是長沙號碼)。

2)該號碼主人的性別(判斷依據:第17位為奇數,性別為男;第17位為偶數,性別為女)。

代碼:

package o;
import java.util.*;
public class p{
public static void main(String[] args) {
System.out.println("請輸入身份證號:");
Scanner rd = new Scanner(System.in);
String sfz = rd.next();
String substr=sfz.substring(0,4);
String cs="4301";
if(cs.equals(substr)) {
System.out.println("該身份證號是湖南長沙的");
}
else {
System.out.println("該身份證號不是湖南長沙的");
}
String suffix=sfz.substring(17);
if(suffix.endsWith("1")||suffix.endsWith("3")||suffix.endsWith("5")||suffix.endsWith("7")||suffix.endsWith("9")) {
System.out.println("號碼主人性別為男");
}
else {
System.out.println("號碼主人性別為女");
}

}
}

運行結果:

技術分享圖片

附加:實現一個二維數組的轉置,操作過程是將二維數組表示的矩陣對應的每一個元素number[i][j]被置為number[j][i]。要求:
? 可以借助一個新的數組來完成轉置
? 如果不借助新的數組完成轉置。
? 轉置舉例:
1 2 3 1 4 7
4 5 6 2 5 8
7 8 9 3 6 9 。。。。。不會寫。

實訓課2