刷题的狂欢-----JAVA每日三练-----第九天

努力刷题,每日三题,题目来源于《Java课后实战训练手册》----清华大学出版社。

第一题
统计学生成绩,输入学生的学号及语文、数学、英语成绩,输出学生各科成绩信息、平均成绩和总成绩,运行结果如图所示。
刷题的狂欢-----JAVA每日三练-----第九天_第1张图片

import java.util.Scanner;

public class SchoolReport {
     
	public static void main(String[] args) {
     
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入本班学生总数:");
		int studentcout = sc.nextInt();
		int achivement[][] = new int[studentcout][4];
		for (int i = 0; i < studentcout; i++) {
     
			System.out.println("请输入第" + (i + 1) + "个学生的编号:");
			achivement[i][0] = sc.nextInt();
			System.out.println("请输入语文成绩:");
			achivement[i][1] = sc.nextInt();
			System.out.println("请输入数学成绩:");
			achivement[i][2] = sc.nextInt();
			System.out.println("请输入英语成绩:");
			achivement[i][3] = sc.nextInt();
		}
		System.out.println("学生成绩结果如下");
		System.out.println("---------------------------------------------");
		System.out.println("学生编号\t语文成绩\t数学成绩\t英语成绩\t平均成绩\t总成绩");

		for (int i = 0; i < achivement.length; i++) {
     
			double sum = 0;	//总成绩
			double ave = 0;	//平均成绩
			for (int j = 0; j < achivement[i].length; j++) {
     
				System.out.print(achivement[i][j] + "\t");
				if (j > 0) {
     
					sum += achivement[i][j];
				}
			}
			ave = sum / 3;
			System.out.print(String.format("%.2f", ave) + "\t" +(int)sum+ "\n");
		}
	}
}

第二题
编写一个程序,一辆大巴有 9 排 4 列的座位,模拟这辆客车的售票过程( 1 代表“有票”, 0 代表“无票”),运行结果如图所示。
刷题的狂欢-----JAVA每日三练-----第九天_第2张图片

import java.util.Scanner;
public class Ticket {
     // 客车售票系统
	public static void main(String[] args) {
     
		int location[][] = new int[9][4];// 定义二维数组
		for (int i = 0; i < 9; i++) {
     // for循环开始
			for (int j = 0; j < 4; j++) {
     // for循环开始
				location[i][j] = 1;// 初始化二维数组
			}
		}
		while (true) {
     // 开始售票
			// 输出标题
			System.out.println("            简单客车售票系统" + "\n  9排4列的大巴车开始售票");
			for (int i = 0; i < 9; i++) {
     
				for (int j = 0; j < 4; j++) {
     
					System.out.print(location[i][j] + "\t");// 输出售票信息
				}
				System.out.println();// 输出换行符
			}
			// 创建扫描器,用来进行用户输入
			Scanner sc = new Scanner(System.in);
			// 提示用户输入信息
			System.out.print("请输入要预定的坐位行号:");
			int row = sc.nextInt();// 得到坐位行数
			// 提示用户输入信息
			System.out.print("请输入要预定的坐位列号:");
			int column = sc.nextInt();// 得到坐位列数
			location[row - 1][column - 1] = 0;// 标记售出票状态
		}
	}
}

第三题
使用二维数组实现杨辉三角算法。

import java.util.Scanner;
public class Yanghui {
     
    public static void main(String[] args) {
     
        Scanner scanner = new Scanner(System.in);
        int row = scanner.nextInt();
        // 由于每一行的元素个数不同,所以不定义每一行的个数
        int[][] array = new int[row][];
        for (int i = 0; i < row; i++) {
     
            // 初始化每一行的这个一维数组
            array[i] = new int[i + 1];
            for (int j = 1; j <= row - i; j++) {
     
                System.out.print(" ");
            }
            // 遍历这个数组,添加数组元素
            for (int j = 0; j <= i; j++) {
     
                // 每一列的开头和结尾元素为1,开头的时候,j=0,结尾的时候,j=i
                if (j == 0 || j == i) {
     
                    array[i][j] = 1;
                } else {
     
                    array[i][j] = array[i - 1][j] + array[i - 1][j - 1];
                }
                System.out.print(array[i][j] + " ");
            }
            System.out.println();
        }
    }
}

加油!!!

你可能感兴趣的:(JAVA刷题集,java)