zoukankan      html  css  js  c++  java
  • 第一阶段测试题大题整理(冒泡排序,去重,万年历)以及改错--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!!!!!!

  • 相关阅读:
    SQL获取分组第一条记录
    Highcharts中Legend动态显示点值
    Json序列化
    Xml 序列化
    Json 用法整理
    Oracle如何复制表的sql语句
    spring.net 如何让xml智能提示
    C# 属性和字段的区别
    EasyUI中Grid标题居中方法(jquery实现方法)
    Asp.net Web.Config
  • 原文地址:https://www.cnblogs.com/chenguanai/p/6623826.html
Copyright © 2011-2022 走看看