• 第一阶段测试题大题整理(冒泡排序,去重,万年历)以及改错--2017-03-26


    1、冒泡排序法: 五星级重点

    <script>
    var arr=Array();
    for(var i=0;i<=5;i++){
    var j=prompt("请输入第"+i+"个数");
    j=parseInt(j);
    arr.push(j);
    }
    for(var x=0;x<arr.length;x++){
    for(var y=x+1;y<arr.length;y++){
    if(arr[x]<arr[y]){
    var temp=arr[x];             ------核心
    arr[x]=arr[y];
    arr[y]=temp;
    }
    }

    //document.write(arr[x]);  --------有这一步就不需要下面的遍历输出(简洁)
    }
    for (var k in arr){
    document.write(arr[k]);
    }
    </script>

    2、去重:也重要,原理

    <script>
    var attr=[1,1,2,3,4,4,4,5,6,6,6,6];
    var arr=Array();
    for(var x=0;x<attr.length;x++){       //当为x<=attr.length,结果输出123456undefined,原因看下面
    var status=0;
    for(var y=x+1;y<attr.length;y++){    //当为y<=attr.length,结果输出123456undefined
    if(attr[x]==attr[y]){
    status=1;
    continue;
    }
    }
    if(status==0){
    arr.push(attr[x]);
    }
    }
    for(var z in arr){
    document.write(arr[z]);
    }
    </script>

    原因:在输出123456的同时还多输出了undefined---undefined的意思是占着位但缺少值。所以x的不需要进行最后一次循环,可以x<=attr.length-1;也可以将=去掉。

    考试扣分原因:

    去重不是和邻近数字相比;第一个数字要和剩下的每个数字比一遍;第二个数字也是要和剩下的每一个相比!!!!!

    3、万年历

    参考2017-03-23写的动态时钟

    注意点:

    (1) d.getMonth()+1;     ------------月份要加1;考试的时候你忘了!!!!

     (2)d.getHours();              -------------这三个是复数形式。。。

            d.getMinutes();

           d.getSeconds();

    (3)setInterval("show()",1000);     -----------设置时间间隔,因为要动态显示

    4、改错

    (1)substring(a,b)------a是指起始位置;b是指结束位置;以索引值计算,也就是从0开始数!!!!!  

    (2)"var x=0; while();x+=2;"那么要是使while循坏体执行10次,括号里应填_x<=18_或x<=19或_x<19或x<20__

       我填的是x<=9;  做错原因审题不仔细,以为x+=1!!!!!!

  • 相关阅读:
    数值数据类型
    如何提高数据迁移和复制的速度
    dns解析
    cdn加速
    集群
    JavaScript初学者应注意的七个细节
    CXF 5参考资料
    深入理解Spring MVC 思想
    【深入理解Java内存模型】
    牛人论
  • 原文地址:https://www.cnblogs.com/chenguanai/p/6623826.html
Copyright © 2020-2023  润新知