数组类题

    // 1.定义一个 含有30个整型元素的数组,按顺序分别赋予从2开始的  偶数;然后按顺序每五 个数求出一个平均值,放在另一个数组中并输出。试编程
 1     var arr = [];
 2     var sum = 0;
 3     var count = [];
 4 
 5     for (var i = 1; i <= 30; i++) {
 6         arr.push(i * 2);
 7         sum += i * 2;
 8 
 9         if (i % 5 == 0) {
10             var aver = sum / 5;
11             count.push(aver);
12             sum = 0;
13         }
14     }
15 
16     console.log(count);

 

    // 2.编写函数map(arr) 把数组中的每一位数字都增加30%,并返回一个新数组
 1     var arr = [10,20,30,40];
 2     var newArr = [];
 3     function fn(arr){
 4         for(var i = 0; i < arr.length; i++){
 5             newArr.push(arr[i] * (1 + 0.3));
 6         }
 7         return newArr;
 8     }
 9     
10     fn(arr);
11     console.log(arr);
12     console.log(newArr);
 
    // 3.有一个从小到大排好序的数组。现输 入一个数,要求按原来的规律 将它插入数组中。
 1     var arr = [1,3,6,8];
 2     function fn(m){
 3         if(m > arr[arr.length - 1]){        // 与数组中最后一个数据进行比较,比它大直接放在最后面
 4             arr.push(m);
 5             return arr;
 6         }else{  // 与数组中的数据一一比较
 7             for(var i = 0; i < arr.length; i++){
 8                 if(m < arr[i]){
 9                     arr.splice(i,0,m); 
10                     break;
11                 }
12             }
13             return arr;
14         }
15     };
16     fn(2);
17     console.log(arr);

 

    // 4.通过循环按执行顺序,做一个5×5的二维数组,赋1到25的自然数,然后输出该数组的左下半三角 。试编程 。
 1     var bigArr = [];
 2     var count = 0;
 3     for(var i = 0; i < 5; i++){
 4         var sArr = [];
 5         for(var j = 0; j < 5; j++){
 6             count++;
 7             sArr.push(count);
 8         }
 9         bigArr.push(sArr);
10     };
11     console.log(bigArr);
12 
13     for(var i=0;i<bigArr.length;i++){
14         for(var j=0;j<=i;j++){
15             document.write(bigArr[i][j] + "&nbsp;&nbsp;&nbsp;");
16         }
17         document.write("<br>");
18     };
 
    // 5.编写函数norepeat(arr) 将数组的重复元素去掉,并返回新的数组
 1     var arr= [1,1,2,4,5,7,8,4,4,3,3,0];
 2     var newArr = [];
 3     function norepeat(arr){
 4         for(var i = 0; i < arr.length; i++){
 5             if(newArr.indexOf(arr[i]) == -1){
 6                 newArr.push(arr[i]);
 7             }
 8         }
 9         return newArr;
10     }
11     console.log(norepeat(arr));
12     console.log(arr);

 

 
 
posted @ 2020-07-27 22:43  郭温柔la  阅读(198)  评论(0)    收藏  举报