A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

本帖最后由 神之梦 于 2013-7-16 12:27 编辑

由于22期即将开班,23期报名火热,特此推出22,23期和云舞联合重磅答题活动!!!

加分说明:
          1、两次发题目之间是答题时间,跟下一次发题时间一样时或之前,答题有效。
             没有做代码题的抢答分扣一半,超时的,抢答题总共扣除2/3。
        2、代码题上限五分。
        3、我先加的是有效的楼层,对于没有加分的楼主要么是答案错误,要么是不在有效答题时间。
             对于不在答题时间的,我会根据代码题的情况统一进行扣分,在最后一个楼层根据统计情况进行加分。

第一部分:抢答!
      1.一共十三道题,第一个正确回答技术分加2分,其他正确回答加一分,错误回答不给分。
      2.十三道题每隔5分钟版主会更新一道题,一直到十三道题更新完毕,结束抢答,版主会统计谁是超级幸运星
      3.赶快复习知识点吧,注意,都是基础题!!!
第二部分:代码题!
      1. 抢答结束后会有一道代码题,代码题不分先后顺序,回答时间在晚上10:00之前即可。
      2.由于考虑今晚工作量问题,所以给大家一个小时的代码题答题时间。代码题是基础题,请自己作答,勿抄袭、百度类似题等。
注意:
          1,抢答题时间初步定为晚上800~9:00,请互相转告,勿失良机哦~~~
        2,如果做了抢答题而没有做代码题,分数减半,同样两道题都做的,分数在原来基础上加1
        3,代码题初步定为晚上9:05分给题,请大家按时刷新看题。
        4.以上分数都是指技术分。
        5.请大家在做完抢答题后回复自己都是在哪几楼回答的问题,方便版主们统计,谢谢大家。
     6.加分会在活动结束后由版主统计,加分。请大家答题后不要着急,预计工作量会有些大,所以请大家耐心等待加分。
        7.如答题后有未加分情况,请联系版主。




代码题:
请用java语言做一个猜拳小程序
1.需要用到的知识点:泛型、继承、封装、多态、伪随机数、IO流等
2.定义三个人物相对应不同的困难程度。
3.完全开放式答题,你能做成什么样的,就做成什么样
4.结果要截图出来,不在一个楼的注明是哪几个楼


评分

参与人数 1技术分 +1 收起 理由
万琪 + 1 赞一个!

查看全部评分

109 个回复

正序浏览
附加图片 有点迟了 不好意思 斑竹我这还算吧?

1.JPG (32.23 KB, 下载次数: 0)

1.JPG

2.JPG (32.39 KB, 下载次数: 0)

2.JPG
回复 使用道具 举报
package com.ma.test;

import java.util.Scanner;

public class Person {
        int n = 0;

        public int input() {
                System.out.println("-------欢迎进入游戏世界--------");
                System.out.println("*******************************");
                System.out.println("        **猜拳开始** ");
                System.out.println("*******************************");
                System.out.println("出拳规则:石头,剪刀,布");
                System.out.println("你的对手为:1.修罗 2.地狱犬 3.啸月天狼 4.神秘人");
                System.out.println("三局两胜");
                System.out.println("*******************************");
                Scanner sc = new Scanner(System.in);
                String s = sc.next();
                if (s.equals("石头")) {
                        n = 1;
                } else if (s.equals("剪刀")) {
                        n = 2;
                } else if (s.equals("布")) {
                        n = 3;
                } else if (s.equals("exit")) {
                        System.out.print("系统退出了");
                        System.exit(0);
                }
                return n;
        }

        public static void main(String[] args) {
                while(true){   
                        Person p = new Person();
                        Computer c = new Computer();
                        Game g = new Game();   
                        g.result(p.input(), c.random());
                        }  
                }
        }



class Computer {
        public int random() {
                int h = (int) (Math.random() * 3 + 1);
                return h;
        }
}

class Game {
        public void result(int n, int m) {
                if (n == m) {
                        System.out.println("平了");
                } else {
                        if (m == 1) {
                                if (n == 2) {
                                        System.out.println("你输了");
                                } else if (n == 3) {
                                        System.out.println("你赢了");
                                }
                        } else if (m == 2) {
                                if (n == 1) {
                                        System.out.println("你赢了");
                                } else if (n == 3) {
                                        System.out.println("你输了");
                                }
                        } else if (m == 3) {
                                if (n == 1) {
                                        System.out.println("你输了");
                                } else if (n == 2) {
                                        System.out.println("你赢了");
                                }
                        }
                }
        }
}
回复 使用道具 举报
我的图片

1.JPG (32.23 KB, 下载次数: 0)

结果

结果

2.JPG (32.39 KB, 下载次数: 0)

结果

结果

评分

参与人数 1技术分 +2 收起 理由
神之梦 + 2 根据超时扣2/3,你的代码题在安卓已经加分.

查看全部评分

回复 使用道具 举报
本帖最后由 云游天下 于 2013-7-15 22:36 编辑

最终版在下边 这个删了
回复 使用道具 举报
straw 中级黑马 2013-7-15 22:27:58
86#

6$J[TD3A[5NT8YX$THNIR4U.jpg (37.35 KB, 下载次数: 0)

6$J[TD3A[5NT8YX$THNIR4U.jpg

评分

参与人数 1技术分 +2 收起 理由
神之梦 + 2 这是超时加代码总分

查看全部评分

回复 使用道具 举报
本帖最后由 闲人忙啊 于 2013-7-15 22:32 编辑

程序没有写完,很简陋
更多图片 小图 大图
组图打开中,请稍候......

评分

参与人数 1技术分 +4 收起 理由
神之梦 + 4 超时题加代码题总分

查看全部评分

回复 使用道具 举报
本帖最后由 闲人忙啊 于 2013-7-15 22:30 编辑

  1. <P> </P>
复制代码
  1. package project.select;
  2. import java.util.Arrays;
  3. import javax.swing.JOptionPane;
  4. import javax.swing.JScrollPane;
  5. import javax.swing.JTextArea;
  6. public class SelectLeader {


  7. public static void main(String[] args) {
  8. final String ino="1号:修罗;2号:地狱犬;3号:啸月天狼;4号:神秘人\n";
  9. final String rule="出拳规则:1.石头;2.剪刀;3.布 \n" +
  10. "请出拳";

  11. String[] candidate={"修罗","地狱犬","啸月天狼","神秘人"};
  12. //第一步:输入
  13. int[] students=new int[40];
  14. String input="";
  15. int sno=0;
  16. String prompt="";
  17. int count = 0;
  18. for(int i=0;i<3;i++){
  19. prompt="----------------欢迎进入游戏世界---------------\n";
  20. input=JOptionPane.showInputDialog(prompt+ino+rule);
  21. if(input!=null){//表明点击了取消键,表示放弃,此时数组元素值是0
  22. /* while循环处理用户输入的非有效数组的情况
  23. * (1)给出提示信息
  24. * (2)让用户重新输入*/
  25. while(!input.equals("1")&
  26. !input.equals("2")&
  27. !input.equals("3")){
  28. //给用户提示信息
  29. JOptionPane.showMessageDialog(null, "请输入有效数字!");
  30. //让用户重新输入
  31. input=JOptionPane.showInputDialog(prompt+ino+rule);
  32. //如果用户重新输入时,选择放弃,则通过break语句跳出while循环
  33. if(input==null){
  34. break;
  35. }
  36. }
  37. //由于while循环中,有break语句,所以此处要有条件判断
  38. if(input!=null){
  39. sno=Integer.parseInt(input);
  40. students=sno;
  41. }
  42. }


  43. }
  44. int n=random();
  45. int n1=Integer.parseInt(input);
  46. count=result11(n,n1,count);



  47. String result="游戏结果";
  48. result+="分为:"+count+"\n";
  49. if(count>=2){
  50. result+="您赢了";
  51. }else{
  52. result+= "您输了";
  53. }
  54. JTextArea jta=new JTextArea(20,30);//文本区对象
  55. jta.setText(result);//文本区对象的显示内容
  56. JScrollPane jsclp=new JScrollPane(jta);//给文本区添加滚动条
  57. JOptionPane.showMessageDialog(null, jsclp);
  58. System.out.println(count);

  59. }
  60. public static int result11(int n,int m,int count){
  61. if(n == m){
  62. System.out.println("平了");
  63. }else{
  64. if(m==1){
  65. if(n==2){
  66. JOptionPane.showMessageDialog(null,"你输了");
  67. }else if(n ==3){
  68. JOptionPane.showMessageDialog(null,"你赢了");
  69. count++;
  70. }
  71. }else if(m == 2) {
  72. if(n == 1){
  73. JOptionPane.showMessageDialog(null,"你赢了");
  74. count++;
  75. }else if(n ==3){
  76. JOptionPane.showMessageDialog(null,"你输了");
  77. }
  78. }else if( m ==3 ){
  79. if(n==1){
  80. JOptionPane.showMessageDialog(null,"你输了");
  81. }else if(n == 2){
  82. JOptionPane.showMessageDialog(null,"你赢了");
  83. count++;
  84. }
  85. }
  86. }
  87. return count;
  88. }
  89. public static int random() {
  90. int h = (int)(Math.random()*3+1);
  91. return h;
  92. }

  93. }


复制代码
回复 使用道具 举报
本帖最后由 云游天下 于 2013-7-15 22:37 编辑

//这个不是最终版的 最后结果在下边
package com.ma.test;
import java.util.Scanner;
public class Person {
int n = 0;
public int input() {
  System.out.println("请输入:石头,剪刀,布");
  Scanner sc = new Scanner(System.in);
  String s = sc.nextLine();
  if (s.equals("石头")) {
   n = 1;
  } else if (s.equals("剪刀")) {
   n = 2;
  } else if (s.equals("布")) {
   n = 3;
  } else if (s.equals("exit")) {
   System.out.print("系统退出了");
   System.exit(0);
  }
  return n;
}
public static void main(String[] args) {
  while(true){   
   Person p = new Person();
   Computer c = new Computer();
   Game g = new Game();
   int num=p.input();
   int num1=c.random();
   g.result(num,num1);
   }  
  }
}

class Computer {
public int random() {
  int h = (int) (Math.random() * 3 + 1);
  return h;
}
}
class Game {
public void result(int n, int m) {
  if (n == m) {
   System.out.println("平了");
  } else {
   if (m == 1) {
    if (n == 2) {
     System.out.println("你赢了");
    } else if (n == 3) {
     System.out.println("你赢了");
    }else if (n == 0) {
     System.out.println("你输了");
    }
   } else if (m == 2) {
    if (n == 1) {
     System.out.println("你输了");
    } else if (n == 3) {
     System.out.println("你输了");
    }else if (n == 0) {
     System.out.println("你输了");
    }
   } else if (m == 3) {
    System.out.println("你输了");
   }
  }
}
}


回复 使用道具 举报
才学习了2天,什么都看不懂,呜呜哀哉{:soso_e115:}
回复 使用道具 举报
24# 27# 28# 39# 48# 53# 60# 66# 74#
是我回答的的 谢谢斑竹,记得加分哦 我去研究代码题了
回复 使用道具 举报
1.封装 继承 多态
回复 使用道具 举报
8.
3个对象

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1 三个都超时了

查看全部评分

回复 使用道具 举报
如果k要是i 的话,那就是一次
回复 使用道具 举报
神之梦 发表于 2013-7-15 20:56
第10题:以下循环体的执行次数是()
        int  i, j;
        for(i=0,j=1;k

0次,哪里来的K,都没声明过.

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1

查看全部评分

回复 使用道具 举报
straw 中级黑马 2013-7-15 21:05:05
76#
第七题:
单例设计模式
        懒汉试:
        class A{
           private static final A a=null;
           //将构造方法私有化
           private A(){}
           public static A getInstands(){
               if(a==null){
                  a=new A();
               }
               return a;
            }
         }
回复 使用道具 举报

第10题k没有定义、执行不了

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1

查看全部评分

回复 使用道具 举报
神之梦 发表于 2013-7-15 20:50
阅读代码片段,下面()代码导致程序出错。
int  count;                                //第1行
int  x[] ...

第1行错,声明局部变量没赋值;
第三行<5后面要加分号;
回复 使用道具 举报
straw 中级黑马 2013-7-15 21:03:50
73#
第十题:
k变量没有定义,编译错误!for循环不能执行

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1

查看全部评分

回复 使用道具 举报
神之梦 发表于 2013-7-15 20:56
第10题:以下循环体的执行次数是()
        int  i, j;
        for(i=0,j=1;k

不会,j都没有初始化吧,答案是多少?
回复 使用道具 举报
神之梦 发表于 2013-7-15 20:50
阅读代码片段,下面()代码导致程序出错。
int  count;                                //第1行
int  x[] ...


第3行,i<5后面少写了;
第4行,count没有初始化

评分

参与人数 1技术分 +2 收起 理由
神之梦 + 2 超时加代码题没写,总分。。。。。.

查看全部评分

回复 使用道具 举报
12345下一页
您需要登录后才可以回帖 登录 | 加入黑马