问答详情
源自:4-10 编程练习

这样用switch写出来为什么没有输出,这样是错的吗?

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>流程控制语句</title>

<script type="text/javascript">

  var infos=

  [['小A','女',21,'大一'],

   ['小B','男',23,'大三'],

   ['小C','男',24,'大四'],

   ['小D','女',21,'大一'],

   ['小E','女',22,'大四'],

   ['小F','男',21,'大一'],

   ['小G','女',22,'大二'],

   ['小H','女',20,'大三'],

   ['小I','女',20,'大一'],

   ['小J','男',20,'大三'],

    ];

 //第一步把之前的数据写成一个数组的形式,定义变量为 infos

  

 //第一次筛选,找出都是大一的信息

 var femel="女";

 switch(femel)

 {  

    case "女": document.write(infos[0]);

    case "男":  continue;

    case "男":  continue;

    case "女": document.write(infos[3]);

    case "女": document.write(infos[4]);

    case "男":   continue;

    case "女": document.write(infos[6]);

    case "女": document.write(infos[7]);

    case "女": document.write(infos[8]);

    case "男":  continue;

 }

 //第二次筛选,找出都是女生的信息

 

 

  

</script>

</head>

<body>

</body>

</html>


提问者:逍遥叹什么 2016-11-25 16:53

个回答

  • 慕哥0815682
    2016-11-25 18:09:10

    你swith语句没理解透,改成这样就好了

     var infos = [['小A','女',21,'大一'], ['小B','男',23,'大三'], ['小C','男',24,'大四'], ['小D','女',21,'大一'], ['小E','女',22,'大四'], ['小F','男',21,'大一'], ['小G','女',22,'大二'], ['小H','女',20,'大三'], ['小I','女',20,'大一'], ['小J','男',20,'大三']];


     //第一次筛选,找出都是大一的信息

     for(var i = 0;i < infos.length;i++){

        switch(infos[i][1])

        {  

            case "男":break;

            case "女":if(infos[i][3]=="大一"){document.write(infos[i][0]);}break;

            default: break;

        }

     }


  • 雾林湘竹
    2016-11-25 18:04:19

    1 第一个case中的冒号需要切一下输入法

    2 switch中不能用continue

  • AaronWell
    2016-11-25 17:39:06


    这是一个选择语句,这样写是错的。输不出来因为 你的第一句case里面的“:”是在中文状态下的,还有continue没必要