java后宫选妃文字版

29 篇文章 0 订阅
8 篇文章 0 订阅

package ImperialHaremOrSeraglio;
import java.util.Scanner;
/**

  • 后宫选妃
  • @author 大杨
    *@date 2019年8月17日 上午12:06:54
    */
    public class AppMain {
    public static void main(String[] args) {
    Scanner input=new Scanner(System.in);
    /*后宫娘娘名称数组,预留五个空间/
    String[]nnNameArray= {“甄姬”,“妲己”,“西施”,“杨玉环”,“王昭君”," “,” “,” “,” “,” “};
    /*级别名称数组/
    String[]levelName={“贵人”,“嫔妃”,“爱妃”,“贵妃”,“皇妃”,“皇贵妃”,“皇后”};
    /*对应每个娘娘的等级/
    int[]level=new int[10];
    /*初始化娘娘等级/
    for (int i = 0; i < level.length; i++) {
    level[i]=0;
    }
    /*每个娘娘的好感度/
    int[]loves=new int[10];
    int nncount=5; //娘娘初始数量
    /*初始化娘娘好感度默认为100/
    for (int i = 0; i < nncount; i++) {
    loves[i]=100;
    }
    for (int i = 0; i < nncount; i++) {
    System.out.println(nnNameArray[i]+”\t"+levelName[level[i]]+"\t"+loves[i]);
    }
    int gameDay=1;//游戏默认十天
    while(gameDay<=10) {
    System.out.printf(“游戏进行到第%d天\n”,gameDay);
    System.out.println(“1.皇上下旨选妃”);
    System.out.println(“2.翻牌宠幸”);
    System.out.println(“3.打入冷宫”);
    System.out.println(“4.朕的爱妃呢?\t(查找、修改状态)”);
    System.out.print(“陛下请选择:”);
    int choice=input.nextInt();
    switch(choice) {
    case 1://皇上下旨选妃\t\t(增加)
    if(nncount= =nnNameArray.length) {
    System.out.println(“陛下,后宫已人满为患,皇帝家也没米下锅了!”);
    break;
    }
    System.out.print(“请输入新进娘娘的名讳:”);
    String newname=input.next();
    //增加姓名数组,好感度数组,级别数组
    nnNameArray[nncount]=newname;
    loves[nncount]=100;//默认好感度为100
    //其他娘娘的好感度-10
    for (int i = 0; i <nncount; i++) {
    loves[i]-=10;
    }
    nncount++;
    break;
    case 2://翻牌宠幸\t\t(修改状态)
    int searchIndex=-1;
    System.out.print(“请输入要宠幸娘娘名讳:”);
    String name=input.next();
    for (int i = 0; i < nncount; i++) {
    if(name.compareTo(nnNameArray[i])= =0) {
    searchIndex=i;
    break;
    }
    }
    if(searchIndex= =-1) {
    System.out.println(“陛下,不要活在梦中,要面对现实!”);
    break;
    }
    //找到之后,该娘娘好感度+20,其他娘娘好感度-10
    loves[searchIndex]+=20;
    if (level[searchIndex]+1= =levelName.length) {
    System.out.printf("%s娘娘已经母仪天下了,升级失败!");
    loves[searchIndex]+=10;
    break;
    }
    level[searchIndex]++;
    for (int i = 0; i < nncount; i++) {
    if (i= =searchIndex) {
    continue;
    }
    loves[i]-=10;
    }
    System.out.printf("%s被您宠幸,好感度+20,并升级为%s,其他娘娘好感度-10\n",nnNameArray[searchIndex],levelName[level[searchIndex]]);
    break;
    case 3://打入冷宫,其他娘娘好感度+10
    System.out.print(“请输入您要打入冷宫的娘娘名讳:”);
    String lgname=input.next();
    int lgIndex=-1;
    //查找娘娘的下标
    for (int i = 0; i < nncount; i++) {
    if(lgname.compareTo(nnNameArray[i])= =0) {
    lgIndex=i;
    break;
    }
    }
    if (lgIndex==-1) {
    System.out.println(“陛下,面对现实!您未拥有该美人~~”);
    break;
    }
    /*若找到冷宫娘娘下标,则根据下标删除娘娘名字,好感度,等级/
    //删除娘娘名字
    for (int i = 0; i < nnNameArray.length-1-lgIndex; i++) {
    nnNameArray[lgIndex+i]=nnNameArray[lgIndex+i+1];
    loves[lgIndex+i]=loves[lgIndex+i+1];
    level[lgIndex+i]=level[lgIndex+i+1];
    }
    level[nncount]=0;//重置删除的娘娘的等级
    loves[nncount]=100;//重置删除的娘娘的好感度
    nncount-=1;//娘娘数量-1
    for (int i = 0; i < nncount; i++) {
    loves[i]+=10;
    }
    break;
    case 4://朕的爱妃呢?\t(查找、修改状态)
    //亲自选择娘娘宠幸,该娘娘好感度+50,等级+2,其他娘娘好感度-20
    System.out.print(“请输入要宠幸娘娘的名讳:”);
    String cxname=input.next();
    int cxIndex=-1;
    //查找娘娘的下标
    for (int i = 0; i < nncount; i++) {
    if(cxname.compareTo(nnNameArray[i])= =0) {
    cxIndex=i;
    break;
    }
    }
    loves[cxIndex]+=50;//好感度+50
    level[cxIndex]+=2;//等级+2
    for (int i = 0; i < nncount; i++) {
    if(i==cxIndex) {
    continue;
    }
    loves[i]-=20;//其他娘娘好感度-20
    }
    break;
    default:
    System.out.println(“必须输入1-4之间的数字”);
    continue;
    }
    System.out.println(“名字\t级别\t好感度\t”);
    for (int i = 0; i < nncount; i++) {
    System.out.printf("%s\t%s\t%d\n",nnNameArray[i],levelName[level[i]],loves[i]);
    }
    //如果超过或3个娘娘的好感度小于60,游戏提前结束
    int count=0;
    for (int i = 0; i < nncount; i++) {
    if (loves[i]<60) {
    count++;
    }
    }
    if(count>=3) {
    System.out.println(“由于部分爱妃们对陛下不满,私下密谋将您毒死!”);
    System.out.println(“陛下执政”+gameDay+“天!”);
    System.out.println(“生涯落下帷幕”);
    System.exit(0);
    }
    gameDay++;
    }
    System.out.println(“恭喜陛下通过10天考验,相信陛下能掌管朝内各个事务!”);
    }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值