1、DVD汽车租赁系统
需求说明:为某音像店开发一个迷你DVD管理器,实现如下图所示的DVD碟片的管理功能。功能具体包括:新增、查看、删除、借出、归还和退出。程序可参照以下步骤进行开发:
(1)数据初始化(5分)
使用数组对象保存DVD信息;每张DVD的信息包含:名称、是否可借的状态、借出的日期、借出的次数。
(2)查看DVD信息(10分)
使用for循环遍历显示每个DVD的信息。当name[i]==null时循环结束。
(3)新增DVD信息(10分)
向各数组中存储相应的DVD信息,如果已经存储了6个DVD则提示用户货架已满。
(4)删除DVD信息(10)
按照输入的名称,删除指定DVD信息;删除借出状态的DVD和不存在的DVD时,都要给出相应提示。
(5)借出DVD业务处理(5)
按照输入的名称,借出指定DVD;判断输入的日期是否在1-31之间;若该DVD已借出或没有该DVD,都要给出相应提示。
(6)归还DVD业务处理(5)
实现归还DVD,并计算租金;如果用户输入的日期大于31或者小于借出日期将提示用户重新输入;如果归还未借出的DVD、不存在的DVD或者归还DVD的时间不合理则分别给出相应提示。
(7)菜单切换(5)
使用switch语句实现菜单选择;使用do-while循环来实现返回和退出。
该程序的部分效果如下图所示。
public class DVD {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String names[] = new String[6];
String[] zt = new String[6];
int[] times = new int[6];
int[] cs = new int[6];
int[] jc=new int[6];
int[] ghd=new int[6];
int nums=-1;
System.out.println("欢迎使用迷你DVD管理器");
System.out.println("-------------------------");
do{
System.out.println("1:新增DVD");
System.out.println("2:查看DVD");
System.out.println("3:删除DVD");
System.out.println("4:借出DVD");
System.out.println("5:归还DVD");
System.out.println("6:退出DVD");
System.out.println("--------------------");
System.out.print("请选择你要办理的业务:");
int choose = sc.nextInt();
boolean isAdd=false;
boolean isdel=false;
boolean isFind=false;
boolean issFind=false;
boolean isExit=false;
switch (choose) {
case 1:
System.out.println("--->>>>新增DVD");
for(int i=0;i<names.length;i++){
if(names[i]==null){
isAdd=true;
System.out.print("请输入DVD名称:");
String name=sc.next();
System.out.println("是否可借?");
int q=sc.nextInt();
String qw=q>0? "可以借": "不可以借";
System.out.print("请输入已借出次数:");
int fen=sc.nextInt();
System.out.println("新增《"+name+"》成功");
System.out.println("-----------------------------");
names[i]=name;
zt[i]=qw;
cs [i]= fen;
break;
}
}
if(!isAdd){
System.out.println("货架已满");
}
break;
case 2:
System.out.println("*****查看DVD*****");
System.out.println("序号\t\tDVD名称\t\t是否可借\t\t借出日期\t\t借出次数");
for(int i=0;i<names.length;i++){
if(names[i]!=null){
isAdd=false;
String time=times[i]+"号";
System.out.println((i+1)+"\t\t"+names[i]+"\t\t"+zt[i]
+"\t\t"+time+"\t\t"+cs[i]+"\t\t");
System.out.println("------------------------");
}
}
break;
case 3:
System.out.println("请输入需要删除的DVD编号:");
int a=sc.nextInt();
for(int i=0;i<names.length;i++){
if(names[i]!=null && zt[i]=="可以借" && a==i+1 ){
isdel=true;
for(int j=a-1;j<names.length-1;j++){
names[j]=names[j+1];
zt[j]=zt[j+1];
cs[j]=cs[j+1];
times[j]=times[j+1];
}
names[names.length-1]=null;
zt[names.length-1]=null;
cs[names.length-1]=0;
times[names.length-1]=0;
System.out.println("DVD删除成功");
break;
}else if(names[i]!=null && zt[i]=="不可以借" && a==i+1 ){
isdel=true;
System.out.println("DVD已经借出不能删除");
}
}
if(!isdel){
System.out.println("您要删除的DVD不存在");
}
break;
case 4:
System.out.print("请输入需要借出DVD的编号:");
int orderId=sc.nextInt();
System.out.print("输入借出日期");
int biaoHao=sc.nextInt();
for(int i=0;i<names.length;i++){
times[i]=biaoHao;
if(1< times[i] && times[i]< 31 && zt[i]=="可以借" && orderId==i+1){
zt[i]="不可以借";
System.out.println("DVD成功借出");
isFind=true;
break;
}else if(1< times[i] && times[i]< 31 && zt[i]=="不可以借" && orderId==i+1){
System.out.println("DVD已经借出");
isFind=true;
break;
}else if(1> times[i] || times[i]> 31){
System.out.println("你输入的借出日期有误,请重新输入");
isFind=true;
break;
}
}
if(!isFind){
System.out.println("您输入的DVD不存在");
}
break;
case 5:
System.out.print("请输入需要归还DVD的编号:");
int gh=sc.nextInt();
System.out.print("输入归还日期");
int ghb=sc.nextInt();
for(int i=0;i<names.length;i++){
ghd[i]=ghb;
if(times[i]< ghd[i] && ghd[i]< 31 && zt[i]=="不可以借" && gh==i+1){
zt[i]="可以借";
System.out.println("DVD归还成功");
int n=ghd[i]-times[i];
int m=3;
int l=n*3;
System.out.println("收你"+l+"元");
issFind=true;
break;
}else if( zt[i]=="可以借" && gh==i+1){
System.out.println("DVD还未归还");
issFind=true;
break;
}else if(times[i]> ghd[i] || ghd[i]> 31 || gh==i+1){
System.out.println("你输入的归还日期有误,请重新输入");
issFind=true;
break;
}
}
if(!issFind){
System.out.println("您输入的DVD不存在");
}
break;
case 6:
isExit=true;
break;
default:
isExit=true;
break;
}
if(!isExit){
System.out.print("输入0返回:");
nums=sc.nextInt();
}else{
break;
}
}while(nums==0);
System.out.println("成功退出系统,欢迎下次使用");
}
}