黑马程序员技术交流社区

标题: 21点小游戏求代码 [打印本页]

作者: zhangyawang523    时间: 2016-10-6 22:07
标题: 21点小游戏求代码
“21点”小游戏(牌的点数累加和大于21结束游戏,小于21可以选择继续要牌)
        需求:
        1.程序执行时,显示界面:1.发牌    2.结束发牌,键盘输入1个整数值,如果输入1,就发牌;如果键盘录入2就结束发牌
        2:每次发牌随机获取1个1-13(包含1和13)之间的整数
        3:每次执行完发牌,如牌点数的累加和小于等于21,控制台提示手上的牌有哪几个,累加的点数为多少
        4:如果当前手上的的牌点数累加和大于21,就提示 “点数为:***,大于21结束游戏”(***为手上牌点数的累加和),并结束游戏       
5.选择结束发牌,在控制台提示"您现在手上的牌有:@@",点数为:**",并结束程序(@@为手上所有的牌,***为手上牌点数的累加和)
6..每次执行完发牌或输入其他数值,转跳回开始的选择界面
作者: tliangl928    时间: 2016-10-6 22:56
[Java] 纯文本查看 复制代码
public class Test01 {
        public static void main(String[] args) {
                StringBuffer sb = new StringBuffer();
                int sum=0;
                while(true){
                        if ((new Scanner(System.in).nextInt())==2) {
                                return;
                        } else if ((new Scanner(System.in).nextInt())==1) {
                                int num = new Random().nextInt(13)+1;
                                sum +=num;
                                if (sum<21) {
                                        System.out.print("您手上的牌是:");
                                        sb.append(Integer.toString(num)+" ");
                                        System.out.println(sb);
                                } else {
                                        System.out.println("点数为:"+sum+",大于21点,游戏结束");
                                        return;
                                }
                        }       
                }
        }
}

但愿对你有所帮助……
作者: zhangyawang523    时间: 2016-10-6 23:34
tliangl928 发表于 2016-10-6 22:56
[mw_shl_code=java,true]public class Test01 {
        public static void main(String[] args) {
                StringBuffe ...

试了下 还是有缺陷 每次运行需要输入两个1才能继续往下走
作者: tliangl928    时间: 2016-10-7 22:28
zhangyawang523 发表于 2016-10-6 23:34
试了下 还是有缺陷 每次运行需要输入两个1才能继续往下走

那你就在这个的基础上改一下呗……




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2