您的位置:程序门 -> java -> j2ee / ejb / jms



java小程序


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


java小程序[已结贴,结贴人:zx_wp]
发表于:2007-04-28 11:06:15 楼主
本人有一简单的java小程序想请教高手~    
程序中定义的固定变量:    
10个教室     30个单人桌子        
 
当用户在文本框输入60次学生号时点击提交然后将这60个学生分在程序随即抽出的2个教室中的60个座位上~    
然后将这些数据展现在一张列表中列出   学生考号   所在教室   座位号


希望高手能帮帮小弟把源码贴出来拿gui,jsp做都行,实在是不会啊~分不够您说我再加都行~谢谢各位了~    
发表于:2007-04-28 11:07:251楼 得分:0
在线求救啊
发表于:2007-04-28 11:23:472楼 得分:0
在文本框输入60次学生号

晕死
发表于:2007-04-28 11:28:323楼 得分:0
分的确不够。
发表于:2007-04-28 11:29:464楼 得分:0
随机啊
发表于:2007-04-28 11:31:085楼 得分:0
maees在啊~分不够我可以加啊~我是昨天的andypeng
发表于:2007-04-28 11:31:506楼 得分:0
昨天给你了130~今天给你200,我别的区还发了这个帖子~
发表于:2007-04-28 11:32:307楼 得分:0
俩个加起来200了~_~
发表于:2007-04-28 11:41:168楼 得分:0
我现在去吃饭,一会如果还没有人给你答案,我来写吧
发表于:2007-04-28 11:41:259楼 得分:0
在文本框输入60次学生号~做循环输入60次即可,当输入60次数据时不可再输入~当然少于60次提交到列表的按钮也不可用~只能输入60次时才能生成列表
发表于:2007-04-28 11:41:3810楼 得分:0
好的~谢谢你啊~先去吃饭吧
发表于:2007-04-28 11:42:4811楼 得分:0
最好能用gui只要装上java虚拟机就能运行的~~~其他的也行~麻烦您了
发表于:2007-04-28 13:05:2012楼 得分:90
gui麻烦得很,随便写了一个命令行的,自己看着改吧。
不能全靠别人啊。否则学不到东西。

import   java.io.bufferedreader;
import   java.io.ioexception;
import   java.io.inputstreamreader;
import   java.util.arraylist;
import   java.util.arrays;
import   java.util.list;
import   java.util.random;

public   class   demo   {
       
        /**   creates   a   new   instance   of   demo   */
        public   demo()   {
        }
       
        public   static   random   random   =   new   random();
       
        public     static       void   action(string[]   room,string[]   std)throws   exception{
                //   选择教室
                string[]   sr   =   new   string[2];
                sr[0]   =   room[random.nextint(room.length)];
                while(true){
                        sr[1]   =   room[random.nextint(room.length)];
                        if(!sr[1].equals(sr[0])){
                                break;
                        }
                }
                system.out.println( "选择的教室是: "+sr[0]+ ", "+sr[1]);
                //   两个教室分配的学生
                string[]   std1   =   new   string[30];
                string[]   std2   =   new   string[30];
               
                //   已经被选择的学生
                list   list   =   new   arraylist(arrays.aslist(std));
                for   (int   i   =   0;   i <30   ;   i++)   {
                        string   str   =   (string)list.get(random.nextint(list.size()));
                        std1[i]   =   str;
                        list.remove(str);
                }
                for   (int   i   =   0;   i <30   ;   i++)   {
                        string   str   =   (string)list.get(random.nextint(list.size()));
                        std2[i]   =   str;
                        list.remove(str);
                }
               
                system.out.println( "第一间教室 "+sr[0]+ ": ");
                for   (int   i   =   0;   i   <   std1.length;   i++)   {
                        system.out.print(std1[i]+ ", ");
                }
                system.out.println( " ");
                system.out.println( "第二间教室 "+sr[1]+ ": ");
                for   (int   i   =   0;   i   <   std2.length;   i++)   {
                        system.out.print(std2[i]+ ", ");
                }
        }
       
        public   static     void   test()throws   exception{
                string[]   room   =   new   string[]{ "a ", "b ", "c ", "d ", "e ", "f ", "g ", "h ", "i ", "j ", "k "};
                string[]   std   =new   string[60];
                for   (int   i   =   1;   i   <=60;   i++)   {
                        std[i-1]   =   string.valueof(1000+i).substring(1);
                }
                action(room,std);
        }
       
        public   static   void   input()throws   exception{
                bufferedreader   in   =   new   bufferedreader(new   inputstreamreader(system.in));
                string   str   =   " ";
                string[]   room   =   new   string[]{ "a ", "b ", "c ", "d ", "e ", "f ", "g ", "h ", "i ", "j ", "k "};
                string[]   std   =new   string[60];
                for   (int   i   =   1;   i   <=60;   i++)   {
                        str   =   in.readline();
                        std[i-1]=str;
                }
                action(room,std);
        }
       
        public   static   void   main(string[]   args)throws   exception   {
//                 test();
                input();
        }
       
}
发表于:2007-04-28 13:09:2013楼 得分:0
估计我还有些问题~你能加我qq吗?112158191~
发表于:2007-04-28 13:13:4114楼 得分:0
我不上qq,karkaiy_007@163.com
发表于:2007-04-28 13:17:3615楼 得分:0
那的确挺不方便的~那好吧~我自己先研究研究
发表于:2007-04-28 13:18:3816楼 得分:0
http://community.csdn.net/expert/topic/5499/5499682.xml?temp=.3529627

你在这个帖子说个话~这是我在gui区发的问题
发表于:2007-04-28 13:29:0317楼 得分:0
当午?
发表于:2007-04-28 13:30:0918楼 得分:0
没看清楚
发表于:2007-04-28 13:41:4619楼 得分:10
2个教室和一个教室其实都是一样的,将第一个教室的座位编号为1到30,将第二个教室的座位的编号编为31到60,这样,问题,就变成了60个学生,60个座位,(程序中)然后我们先让学生按顺序坐上去,然后经过一定的调整,就可以达到随机按排座位的效果了
radomlocation.java
=================================
import   java.util.random;

public   class   radomlocation   {
     
        public   static   void   main(string[]   args){
int[]   numarray   =   new   int[60];
//这里你自己输入60个学号吧,这里我用了int类型,这里设成学号为1到60
for(int   i   =   0;i   <   numarray.length;i++){
        numarray[i]   =   i   +   1;
}
system.out.println( "调整前 ");
printlocation(numarray);
changelocation(numarray);
system.out.println( "调整后: ");
printlocation(numarray);
        }
       
        public   static   void   printlocation(int[]   numarray){
for(int   i   =   0;i   <   numarray.length;i++){
        system.out.printf( "%4d ",numarray[i]);
        if((i+1)   %   5   ==   0)system.out.println();
}
        }
       
        public   static   void   changelocation(int[]   numarray){
random   rd   =   new   random();
int   flag;
int   temp;
for(int   i   =   0;i   <   numarray.length;i++){
        flag   =   rd.nextint(numarray.length);
        temp   =   numarray[i];
        numarray[i]   =   numarray[flag];
        numarray[flag]   =   temp;
}
        }
}

==========================================
运行结果
调整前
      1       2       3       4       5
      6       7       8       9     10
    11     12     13     14     15
    16     17     18     19     20
    21     22     23     24     25
    26     27     28     29     30
    31     32     33     34     35
    36     37     38     39     40
    41     42     43     44     45
    46     47     48     49     50
    51     52     53     54     55
    56     57     58     59     60
调整后:
    21     48       5     15     49
    51     34       3     20     14
      9     11     59       4     45
      8     58     23     37     27
    57     43     16     44     12
    19     39     28     22     35
    26     30     40     47     50
    29     38     33       2     24
    55       1     13     32     53
    52     41     46     10     42
    31     54     25       6     56
    18     60     17     36       7


快速检索

最新资讯
热门点击