第六次作业

这篇文章包含三个Java程序,分别实现了杨辉三角的生成、学生多学科成绩的输入与展示,以及大巴车座位的预订系统。杨辉三角程序通过二维数组动态生成;成绩管理程序接收用户输入,计算并显示学生各科成绩、平均分和总分;座位预订系统允许用户选择座位并标记为已售出。
摘要由CSDN通过智能技术生成

第一题

package third;

import java.util.Arrays;

import java.util.Scanner;

public class bask{

public static void main(String[] args) {

// TODO Auto-generated method stub

int n=10; //这里控制杨辉三角的层数

int[][] arr=new int[n][n]; //创建一个n*n的二维数组

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

//每一层头尾赋值为1

arr[i][i]=1;

arr[i][0]=1;

System.out.print(arr[i][0]+"\t"); //输出每层的开头

//根据杨辉三角的性质,循环由1开始

for(int j=1; j<i; ++j){

//根据杨辉三角的性质,每个数等于上层两数之和

arr[i][j]=arr[i-1][j]+arr[i-1][j-1];

System.out.print(arr[i][j]+"\t"); //输出

}

//跳过i=0时,因为第一层的时候只需要输出一个1

if(i != 0){

System.out.print(arr[i][i]);

}

System.out.println(); //换行

}

}

}

第二题

package third;

import java.util.Arrays;

import java.util.Scanner;

public class bask{

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner in=new Scanner(System.in); //创建扫描器

int number=3; //学生数量

int disciplineNumber=4; //学科数量:学科数量加一,加上学号

int[][] studentScore=new int[number][disciplineNumber];

//输入所有学生的成绩,学号,语文,英语,数学

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

int count=0;

System.out.println("请输出第"+(i+1)+"个学生的编号:");

studentScore[i][count++]=in.nextInt();

System.out.println("请输入语文成绩:");

studentScore[i][count++]=in.nextInt();

System.out.println("请输入数学成绩:");

studentScore[i][count++]=in.nextInt();

System.out.println("请输入英语成绩:");

studentScore[i][count]=in.nextInt();

}

System.out.println("学生成绩结果如下");

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

System.out.printf("%-10s %-10s %-10s %-10s %-10s %-10s","学生编号","语文成绩","数学成绩","英语成绩","平均成绩","总成绩");

System.out.println();

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

int sum=0; //保存每一个学生的成绩总和,因为并没有要求保存,则直接输出结果即可

System.out.printf("%-16d",studentScore[i][0]); //输出学号

//由于学号占0位置处,所以内循环从1开始

for (int j = 1; j < studentScore[i].length; j++) {

//计算总成绩和

sum+=studentScore[i][j];

//输出每科成绩

System.out.printf("%-15d",studentScore[i][j]);

}

//计算平均值,长度需要除去学号

System.out.printf("%-12.2f", (double)sum / (studentScore[i].length-1) );

System.out.printf("%d\n",sum); //输出总和

}

in.close(); //关闭扫描器

}

}

第三题

import java.util.Arrays;

import java.util.Scanner;

public class bask{

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner in=new Scanner(System.in); //创建扫描器

int row=9; //排

int col=4; //列

int[][] seat=new int[row][col]; //创建一个排列符合要求的二维数组

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

Arrays.fill(seat[i],1); //初始化,将数组数据全部填充为1,表示空位

}

out_seat_data(seat); //输出大巴车的座位情况

System.out.print("请输入要预定的座位行号:");

int chooseLine=in.nextInt();

System.out.print("请输入要预定的座位列号:");

int choooseCol=in.nextInt();

//排除输入座位号无效的情况

if( (chooseLine > seat.length || chooseLine <= 0) || (choooseCol > seat[0].length || choooseCol <= 0)){

System.out.println("选择座位错误,无此座位号,请重新选择!!!");

return;

}

//数组下标从0开始,所以需要减一

seat[chooseLine-1][choooseCol-1]=0; //将被选择的座位置为无票,表示已售出

out_seat_data(seat); //输出座位情况

in.close(); //关闭扫描器

}

//输出大巴车座位情况方法

public static void out_seat_data(int[][] arr){

System.out.println("\t\t简单客车售票系统");

System.out.printf("\t%d排%d列的大巴车开始售票\n",arr.length,arr[0].length);

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

for (int j = 0; j < arr[i].length; j++) {

System.out.print(arr[i][j]+"\t\t\t\t");

}

System.out.println();

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值