JAVA第二次实训作业

1、一维数组的创建和遍历。

声明并创建存放4个人考试成绩的一维数组,并使用for循环遍历数组并打印分数。

要求:

首先按“顺序”遍历,即打印顺序为:从第一个人到第四个人;

然后按“逆序”遍历,即打印顺序为:从从第四个人到第一个人;

输出最高分;

输出最低分;

代码为

import java.util.*;

public class yiweishuzu {

    public static void main(String[] args) {

    final  int maxsize=4;

    double max=0,min=0;

    double studentscore[]=new double[maxsize];

    Scanner reader=new Scanner(System.in);

    for(int i=0;i<maxsize;i++){

       System.out.println("请输入"+(i+1)+"位学生的考试成绩:");

       studentscore[i]=reader.nextDouble();

    }

    System.out.println("顺序输出学生的成绩为:");

    for(int i=0;i<maxsize;i++){

    System.out.println("第"+(i+1)+"位学生的成绩为:"+studentscore[i]+"分"+"\n");

    }

    System.out.println("逆序输出学生的成绩为:");

    for(int i=maxsize;i>0;i--){

       System.out.println("第"+i+"位学生的成绩为:"+studentscore[i-1]+"分"+"\n");

    }

    for(int i=0;i<maxsize;i++){

       if(studentscore[i]>max){

           max=studentscore[i];

       }

    }

    System.out.println("最高分为:"+max+"分");

    min=studentscore[0];

    for(int i=0;i<maxsize;i++){

       if(studentscore[i]<min){

           min=studentscore[i];

    }

}

    System.out.println("最低分为:"+min+"分");

    }

}

运行结果为:

 2、Arrays类的sort方法的理解与应用(参照110页程序)。

对无序的10个数字使用Arrays类的sort方法进行排序。要求:

声明并初始化数组

按如下格式输出排序后的数组

sum[0] = 1

sum[1] = 2

………………

代码为:

import java.util.*;

import java.util.Arrays;

public class paixu {

       public static void main(String[] args) {

       final  int maxsize=10;

       int sum[]=new int[maxsize];

       Scanner reader=new Scanner(System.in);

       for(int i=0;i<maxsize;i++){

           System.out.println("请输入第"+(i+1)+"个无序的数字:");

           sum[i]=reader.nextInt();

       }

        Arrays.sort(sum);

        System.out.println("排序后的数组为:");

        for(int i=0;i<sum.length;i++){

        System.out.println("sum["+i+"]"+"="+sum[i]);

        }

       }

    }

 运行结果为:

3、一个班级的学生成绩存在长度为10的数组中,计算不及格的学生数目。

代码为:

package zuoye;
import java.util.*;
public class Score {
 public static void main(String[] args) {
  int n=0;
  double score[]=new double[10];
  Scanner reader=new Scanner(System.in);
  for(int i=0;i<10;i++) {
   System.out.println("请输入第"+(i+1)+"位学生的成绩(100分制):");
   score[i]=reader.nextDouble();
   if(score[i]>100||score[i]<0) {
   System.out.println("输入错误!");
   i--;
   }
  }
  for(int i=0;i<10;) {
   if(score[i]>60&&score[i]<=100)
    i++;
   else {
    n++;
       i++;
   }
  }
  System.out.println("不及格的学生数目为:"+n);
 }
}

运行结果为:

4、身份证号码的判断。

声明String类型的字符串,保存身份证号码。编写程序判断:

  • 该号码是否为湖南长沙的号码(判断依据:前4位为4301,即长沙号码;否则不是长沙号码)。
  • 该号码主人的性别(判断依据:第17位为奇数,性别为男;第17位为偶数,性别为女)。

 代码为:

package zuoye;
import java.util.*;
public class Number {
 public static void main(String[] args) {
 String number;
 Scanner reader=new Scanner(System.in);
 System.out.println("请输入身份证号码:");
 number=reader.next();
 String cs="4301";
 String substr=number.substring(0,4);
 if(cs.equals(substr)) {
  System.out.println("该身份证号属于湖南长沙!");
  }
  else {
  System.out.println("该身份证号不属于湖南长沙!");
  }
 String sex=number.substring(17);  
 if(sex=="1"||sex=="3"||sex=="5"||sex=="7"||sex=="9")
 System.out.println("该身份证号码主人为男!");
 else
 System.out.println("该身份证号码主人为女!"); 
 }
}

 运行结果为:

5、附加题:

实现一个二维数组的转置,操作过程是将二维数组表示的矩阵对应的每一个元素number[i][j]被置为number[j][i]。要求:

  • 可以借助一个新的数组来完成转置
  • 如果不借助新的数组完成转置。
  • 转置举例:

1   2   3                           1   4   7

4   5   6                           2   5   8

7   8   9                           3   6   9

代码为:

没写~~~~~

猜你喜欢

转载自www.cnblogs.com/lmq123/p/10688865.html