05、8个题目

弹窗依次输入3个学生的成绩。并且使用数组保存,打印出所有学生的的成绩与平均成绩

<script>
        var score = [];
        while (true) {
            score.push(parseInt(prompt('依次输入学生的成绩:')))
            if (score.length >= 3) break;
        }
        // 所有成绩的总和
        var sum = 0;
        // 平均成绩
        var res = 0;
        for (var i = 0; i < score.length; i++) {
            sum += score[i];
        }
        console.log(sum)
        res = sum/score.length;
        console.log('所有学生的成绩' +score+ ';平均成绩:' + res);
 </script>

 一个游戏,前20关是每一关自身的分数,21-30关每一关是10分 31-40关,每一关是20分 41-49关,每一关是30分,50关,是100分。编写一个函数,输入你现在闯到的关卡数,求你现在拥有的分数

<script type="text/javascript">
  var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 100]

  var sum = 0;
  var number = parseInt(prompt('输入关卡!'))
  // console.log(number);

  // s(number);

  // console.log(sum)
  function s(number) {
    for (var i = 0; i < number; i++) {
      sum += arr[i];
    }
    return sum;
  }
  document.write(s(number) + "分")
</script>

编写一个函数,计算两个数字的和、差、积、商

    <script>
        // 计算两个数字的和、差、积、商
        function fun(a,b){
            var n1 = a+b;
            var n2 = a-b;
            var n3 = a*b;
            var n4 = a/b;
            return ('和:'+ n1 +'   ' + "差:" + n2 +'   '+ "积:" + n3 +'   '+ "商:" + n4);
        }
        console.log(fun(3,3))
    </script>

封装函数计算任意参数的最大值

    <script>
        // 使用内置的伪数组  arguments每一个元素就对应着每一个实参
        function max(){
                var MaxResult = arguments[0];
                for(var i = 0; i < arguments.length; i++){

                    if(arguments[i] > MaxResult){
                        MaxResult = arguments[i];
                    }
                }
                console.log(MaxResult);
        }
        max(1,2,3,4,5,6,7,8,9,10,123,5465,123)
    </script>

编写一个函数,计算三个数字的大小,按从小到大顺序输出

    <script>
        // 方法一
        function Sort(a, b, c) {
            var tmp = 0;
            if (a > b){
                tmp = a;
                a = b;
                b = tmp;
            }
            if (a > c){
                tmp = a;
                a = c;
                c = tmp;
            }
            if (b > c){
                tmp = b;
                b = c;
                c = tmp;
            }
            console.log ("从小到大的顺序:" + a + "," + b + "," + c)
        }

        Sort(3,2,1)


        // 方法二
        function sort(a, b, c) {
            var sortArr = [a, b, c].sort(function (n1, n2) {
                return n1 - n2;
            })
            console.log(sortArr);
        }
        sort(10, 2, 1)

    </script>

封装一个函数 计算指定区间的质数个数  例如 100-200之间有多少个质数

    <script>
        function isNum(a,b){
            var arr = [];
            for(var i = a; i <= b; i++){
            var flag = true;
            for(var j = 2; j < i; j++){
                if(i%j == 0){
                    flag = false;
                    break;
                }
            }
            if(flag){
                // console.log(i);
                // 将标记为true的数,添加到arr数组内
                 arr.push(i);
                }
            }
            // 循环结束返回整个质数的数组
            return arr;
        }
        // 接收函数返回的值
        var res = isNum(100,200);
        console.log(res)
        console.log(res.length)
    </script>

封装函数生成指定区间的随机整数

    <script>

        // Math.random()生成0-1之间的一个小数 不包括1

        function Random(min,max){
            /*
                Math.random() * 100 ==> 0 - 100
                Math.random() * 100  + 10 ==> 10 -110
                Math.random() * (100 - 10) ==> 0 - 90
                Math.random() * (100 - 10) + 10 ==> 10 -100
                数学公式
                不包含结束数字:Math.random() * (最大值-最小值)+最小值
                包含结束数字 :Math.random() * (最大值-最小值+1)+最小值
            */ 
           // 随机生成1-16的随机数
        //    var blue = parseInt(Math.random() * 16) + 1;
           return Math.random()*(max-min)+min;
        }
        var res = Random(10,100);
        console.log(res);

    </script>

封装一个函数根据日期计算是这一年的第几天 例如: 20220917,计算后结果为259  要求使用数组保存每个月的天数

    <script>
        function date(num){
            // 取年份
            var year = parseInt(num/10000);
            // 取月份
            var month = parseInt((num - year*10000)/100);
            // 取天数
            var day = parseInt(num - year*10000 - month*100);
            // console.log(year,month,day);
            switch(month){
                case 12:
                    day +=31
                case 11:
                    day +=30
                case 10:
                    day +=31
                case 9:
                    day +=30
                case 8:
                    day +=31  
                case 7:
                    day +=31  
                case 6:
                    day +=30
                case 5:
                    day +=31
                case 4:
                    day +=30
                case 3:
                    day +=31  
                case 2:
                    day +=((month%4 == 0 && month%100 !=0 || month%400==0)) ? 29:28
                default:
                    break;
            }
            console.log(day)
        }
        date(20220917);

    </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值